找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 26409|回复: 6

[文本处理] 批处理下如何创建一个简单的16进制文件

[复制链接]
发表于 2011-6-18 15:51:09 | 显示全部楼层 |阅读模式
比如11.bin  内容如下:00 01 13  这样的16进制文件,以CMD下如何用系统自带的工具创建?
发表于 2011-6-18 16:20:21 | 显示全部楼层
  1. hex 11.bin
复制代码
hex.bat 1.01版:
http://www.bathome.net/thread-12688-1-2.html
发表于 2011-6-18 16:22:27 | 显示全部楼层
可以通过ascmap函数获取http://bbs.bathome.net/thread-12347-1-1.html
  1. @echo off&setlocal enabledelayedexpansion
  2. chcp 437
  3. call ascmap $
  4. chcp 936
  5. cmd /u /c echo;>tmp
  6. (findstr/vrc:$ tmp
  7. set /p=!$:~0x3,1!!$:~0x11,1!)<nul>$
  8. del $>nul
  9. pause
复制代码
发表于 2011-6-18 16:31:38 | 显示全部楼层
本帖最后由 plp626 于 2011-6-18 16:33 编辑

3# zm900612

ascmap函数(version 1.01.01.00精简版)自带0x00字符,楼上代码可以精简为(可读性强):
  1. @echo off&setlocal enabledelayedexpansion
  2. call ascmap $ 0x00.tmp
  3. set/p=!$:~0x03,1!!$:~0x13,1!<nul>11.bin
  4. copy /b 0x00.tmp+11.bin  11.bin
  5. del 0x00.tmp
  6. pause
复制代码
题外话,很感兴趣楼主要用批处理做这种二进制文件操作?
 楼主| 发表于 2011-6-18 16:49:00 | 显示全部楼层
3# zm900612

ascmap函数(version 1.01.01.00精简版)自带0x00字符,楼上代码可以精简为(可读性强):@echo off&setlocal enabledelayedexpansion
call ascmap $ 0x00.tmp
set/p=!$:~0x03,1!!$:~0x13,1!11.b ...
plp626 发表于 2011-6-18 16:31


呵呵,主要是用于打印数据及格式的调整!

看了上面的算法,很不错,谢谢!
发表于 2011-6-18 17:36:04 | 显示全部楼层
既然会切换代码页
不如就用debug
可读性更强

  1. @goto Start
  2. E 100 00 01 13
  3. R CX
  4. 3
  5. W
  6. Q

  7. :Start
  8. @echo off
  9. chcp 437 & graftabl 936 & cls
  10. debug test.bin <%~sf0
复制代码
 楼主| 发表于 2011-6-18 22:09:05 | 显示全部楼层
既然会切换代码页
不如就用debug
可读性更强
@goto Start
E 100 00 01 13
R CX
3
W
Q

:Start
@echo off
chcp 437 & graftabl 936 & cls
debug test.bin
qzwqzw 发表于 2011-6-18 17:36



DEBUG还不怎么会用,这段代码我觉得很有意思,谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 14:46 , Processed in 0.020056 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表