中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-04 19:40
48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » 请教:能否能用批处理实现编码的转换。
可打印版本  933 / 6
第1楼 lianjiang2004 发表于 2007-06-03 07:19
金牌会员 发帖 1,884 积分 3,946
请教:能否能用批处理实现编码的转换。
请教:能否能用批处理实现编码的转换。

我想自动实现把类似下面的16位制字符转换成字符,并赋予变量。能不能实现?需第三方软件也可,但要能支持行命令。


00000004E00: 45 30 38 33 39 32 42 42 38 39 44 45 44 42 38 45
00000004E10: 44 36 46 42 32 39 38 46 38 45 37 32 39 43 31 35

(结果应是E08392BB89DEDB8ED6FB298F8E729C15)
第2楼 tigerpower 发表于 2007-06-03 17:51
中级用户 发帖 99 积分 377
可使用mawk,请参见此帖(点击前往)的『第 15 楼』


1. 将hex.txt中的内容替换成

00000004E00: 45 30 38 33 39 32 42 42 38 39 44 45 44 42 38 45
00000004E10: 44 36 46 42 32 39 38 46 38 45 37 32 39 43 31 35

2. 将hex2ascii.awk中的{gsub(/*/,"")替换成

{gsub(/(.*:| *)/,"")

3. 将最后一行mawk -f hex2ascii.awk hex.txt替换成

E:\>for /f %i in ('mawk -f hex2ascii.awk hex.txt') do @set answer=%i
E:\>echo %answer%

即可。



更多命令行工具,请到本论坛的
WinPE、PowerShell板块(点击进入)


第3楼 lianjiang2004 发表于 2007-06-03 19:13
金牌会员 发帖 1,884 积分 3,946
谢谢。
另此问题已在无忧论坛得到解决。
第4楼 Michael 发表于 2007-06-03 19:44
钻石会员 发帖 3,040 积分 10,051
刚写了一个小程序,从标准输入读,写到标准输出。

http://zhenlove.com.cn/cndos/fileup/files/a2b.zip

假如一个文件---test.txt 内容如你所说:


执行

即可得到结果。
第5楼 lxmxn 发表于 2007-06-03 21:22
版主 发帖 4,938 积分 11,386
Michael 要么不出手,要出手就是好东西,顶了。
第6楼 lianjiang2004 发表于 2007-06-03 21:36
金牌会员 发帖 1,884 积分 3,946
万分感谢。
第7楼 lianjiang2004 发表于 2007-06-03 21:44
金牌会员 发帖 1,884 积分 3,946
试了一下,效果很好。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023