![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-05 22:26 |
共 48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 16进制小写变大写,另外编码格式有变化怎么做 |
| 可打印版本 845 / 3 |
| 第1楼 zhangyn1217 | 发表于 2007-09-25 21:50 |
| 新手上路 发帖 2 积分 6 | |
|
16进制小写变大写,另外编码格式有变化怎么做 请教各位大虾。我在工作中遇到了要把一个文本中的16进制中的小写转换成大写,并且要求把格式也改变后重新写到这个文本中去。例如:2000000这个文本内容如下:
001a6b0a0b0f 0000 0000 0000 0000 0000 0000 0000 0000# 001a6b0a0b10 0000 0000 0000 0000 0000 0000 0000 0000# 001a6b0a0b11 0000 0000 0000 0000 0000 0000 0000 0000# 001a6b0a0b12 0000 0000 0000 0000 0000 0000 0000 0000# 改变后如下: 001A6B0A0B0F 00000000 00000000 00000000 00000001 001A6B0A0B10 00000000 00000000 00000000 00000001 001A6B0A0B11 00000000 00000000 00000000 00000001 001A6B0A0B12 00000000 00000000 00000000 00000001 感谢大家帮忙!:P |
|
| 第2楼 junchen2 | 发表于 2007-09-25 22:46 |
| 高级用户 发帖 219 积分 537 来自 杭州--半山 | |
|
setlocal enabledelayedexpansion
for /f "tokens=1-9" %%a in (1.txt) do ( set a=%%a &set a=!a:a=A!&set a=!a:a=A!&set a=!a:b=B!&set a=!a:c=C!&set a=!a:d=D!&set a=!a:e=E!&set a=!a:f=F! set i=%%i &set i=!i:#=1! echo !a! %%b%%c %%d%%e %%f%%g %%h!i!>>2.txt ) pause |
|
| 第3楼 zhangyn1217 | 发表于 2007-09-25 22:55 |
| 新手上路 发帖 2 积分 6 | |
|
不胜感谢!能否逐行的解释一下。如果源文件的名字每次都不要一样,该怎么写。我是想在开始的地方加个询问要改的文件命的动作。
|
|
| 第4楼 junchen2 | 发表于 2007-09-25 23:16 |
| 高级用户 发帖 219 积分 537 来自 杭州--半山 | |
|
dir /b /s 源文件所在的文件夹路径 >>list.txt
for /f %%a in (list) do ( call :str %%~sa %%~nxa ) :str setlocal enabledelayedexpansion for /f "tokens=1-9" %%a in (%1) do ( set a=%%a &set a=!a:a=A!&set a=!a:a=A!&set a=!a:b=B!&set a=!a:c=C!&set a=!a:d=D!&set a=!a:e=E!&set a=!a:f=F! set i=%%i &set i=!i:#=1! echo !a! %%b%%c %%d%%e %%f%%g %%h!i!>>%2.txt ) goto :eof 这个BAT文件不要放在源文件所在的文件夹里面 [ Last edited by junchen2 on 2007-9-25 at 11:18 PM ] |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |