首页
社区
课程
招聘
[原创]文本和16进制数据相互转换工具
发表于: 2006-6-21 16:18 22514

[原创]文本和16进制数据相互转换工具

2006-6-21 16:18
22514

受人所托,写了个16进制数据和文本之间的相互转换工具,希望大家有用。

使用说明:
    在最上面的编辑框内输入需要转换为16进制的文本,点转换即可。
    在中间的编辑框内输入需要转换为文本的16进制数据点“十六进制到文本”按扭即可在最下面的编辑框内显示出已经转换好的文本。
注意:十六进制到文本转换的时候,需要按照16进制数值的格式输入,比如需要转换的十六进制数据为“A1”,不可输入“a1”。16进制数值只有一位的时候,必须在前面加“0”比如“OA”不可输入“A”。另外两个16进制数据之间必须以空格分开,比如“A1 A2”。
    作者:回心转意

由于整个程序采用E语言编写,不知道是否需要上传源代码,请斑竹指示
源代码如下
.版本 2

.程序集 窗口程序集1

.子程序 _按钮1_被单击
.局部变量 文本, 文本型
.局部变量 字节集, 字节集
.局部变量 长度, 整数型
.局部变量 字节数组, 字节型, , "0"
.局部变量 计次, 整数型
.局部变量 字节, 字节型
.局部变量 整数数组, 整数型, , "0"
.局部变量 文本数组, 文本型, , "0"

文本 = 编辑框1.内容
字节集 = 到字节集 (文本)
编辑框2.内容 = “”
长度 = 取字节集长度 (字节集)
.计次循环首 (长度, 计次)
    字节 = 取字节集数据 (字节集, 1, 计次)
    加入成员 (字节数组, 字节)
.计次循环尾 ()
计次 = 1
.计次循环首 (长度, 计次)
    加入成员 (整数数组, 到数值 (字节数组 [计次]))
.计次循环尾 ()
计次 = 1
.计次循环首 (长度, 计次)
    .如果 (整数数组 [计次] = 0)
        加入成员 (文本数组, “00”)
    .否则
        加入成员 (文本数组, 取十六进制文本 (整数数组 [计次]))
    .如果结束

.计次循环尾 ()
计次 = 1
.计次循环首 (长度, 计次)
    .如果真 (取文本长度 (文本数组 [计次]) = 1)
        文本数组 [计次] = “0” + 文本数组 [计次]
    .如果真结束
    编辑框2.加入文本 (文本数组 [计次] + “ ”)
    ' 如果真 (计次 % 16 = 0)
    ' 编辑框2.加入文本 (#换行符)

.计次循环尾 ()

.子程序 _按钮2_被单击
.局部变量 文本, 文本型
.局部变量 字节集, 字节集

文本 = 编辑框2.内容
字节集 = 文本到字节集 (文本)
编辑框3.内容 = 到文本 (字节集)

.子程序 文本到字节集, 字节集
.参数 文本, 文本型
.局部变量 高位, 文本型
.局部变量 低位, 文本型
.局部变量 高位数据, 整数型
.局部变量 低位数据, 整数型
.局部变量 数值, 整数型
.局部变量 文本数组, 文本型, , "0"
.局部变量 字节集, 字节集
.局部变量 次数, 整数型
.局部变量 计次, 整数型
.局部变量 数值数组, 字节型, , "0"

文本数组 = 分割文本 (文本, “ ”, )
次数 = 取数组成员数 (文本数组)
.计次循环首 (次数, 计次)
    高位 = 取文本左边 (文本数组 [计次], 1)
    低位 = 取文本右边 (文本数组 [计次], 1)

    .判断开始 (高位 = “A”)
        高位数据 = 10
    .判断 (高位 = “B”)
        高位数据 = 11
    .判断 (高位 = “C”)
        高位数据 = 12
    .判断 (高位 = “D”)
        高位数据 = 13
    .判断 (高位 = “E”)
        高位数据 = 14
    .判断 (高位 = “F”)
        高位数据 = 15
    .默认
        高位数据 = 到数值 (高位)
    .判断结束

    .判断开始 (低位 = “A”)
        低位数据 = 10
    .判断 (低位 = “B”)
        低位数据 = 11
    .判断 (低位 = “C”)
        低位数据 = 12
    .判断 (低位 = “D”)
        低位数据 = 13
    .判断 (低位 = “E”)
        低位数据 = 14
    .判断 (低位 = “F”)
        低位数据 = 15
    .默认
        低位数据 = 到数值 (低位)
    .判断结束

    数值 = 高位数据 × 16 + 低位数据
    加入成员 (数值数组, 到字节 (数值))
.计次循环尾 ()
字节集 = 到字节集 (数值数组)
返回 (字节集)

.子程序 _按钮3_被单击

载入 (窗口1, , 真)


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 7
支持
分享
最新回复 (21)
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
2
这里是编程区,所以发布的工具必须附带源码,如果没有源码你回一下贴,我好将该贴转到工具区。
2006-6-21 17:49
0
雪    币: 206
活跃值: (10)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
3
我们这个论坛不限制贴E语言的代码吧
2006-6-21 18:55
0
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
4
是E语言的,支持一下。
2006-6-21 20:18
0
雪    币: 179
活跃值: (131)
能力值: ( LV12,RANK:290 )
在线值:
发帖
回帖
粉丝
5
谢谢分享
2006-6-21 20:36
0
雪    币: 206
活跃值: (10)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
6
3篇精华了,谢谢斑竹
2006-6-21 22:27
0
雪    币: 159
活跃值: (89)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
支持一下,易语言能用到这样,已经很不错了,
2006-6-22 15:10
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
支持文本和16进制数据相互转换工具
2006-6-22 21:37
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
谢谢。下来看看
2006-6-26 20:00
0
雪    币: 200
活跃值: (24)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
不错,支持一下。
2006-6-27 18:24
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
谢谢分享!...
2006-6-30 10:57
0
雪    币: 2569
活跃值: (1183)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
正要10进制转16进制
2010-4-19 10:04
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
看起来不错哈
2010-6-22 20:38
0
雪    币: 243
活跃值: (162)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
可惜没源码,看不到效果
2010-11-5 09:18
0
雪    币: 393
活跃值: (150)
能力值: (RANK:110 )
在线值:
发帖
回帖
粉丝
15
报病毒
2010-12-14 08:53
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
呵呵。。同求,,懒人一个
2010-12-30 11:49
0
雪    币: 563
活跃值: (95)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
E还没研究过
2011-1-1 18:13
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
报毒报毒报毒,这是悲剧
2011-1-20 15:32
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
下了个,顶下楼主
2011-3-10 16:12
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
报毒吗?是不是误报啊。。
2011-3-29 16:16
0
雪    币: 94
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
谢谢 正在参考学习中。
2015-3-20 23:02
0
雪    币: 146
活跃值: (28)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
why not winhex.
2015-3-21 00:12
0
游客
登录 | 注册 方可回帖
返回
//