Board logo

标题: 16进制转换为字符串批处理代码怎么写 [打印本页]

作者: shchaoge    时间: 2014-1-19 00:40     标题: 16进制转换为字符串批处理代码怎么写

16进制转换为字符串批处理代码怎么写?如:4D534D38393630   运行批处理后得出结果:MSM8960
作者: ZJHJ    时间: 2014-1-19 16:30

这个代码几十个字没人写得出来!以下可能会涉及到的问题
1 必须按4D 53 4D 38 39 36 30排列
2 计算原始文件字节
3 用debug产生标准地址码
4 文件按48字节标准排列
5标准地址码与编码合并
6计算文件长度码
7生成bat文件
作者: ZJHJ    时间: 2014-1-19 19:28

我觉得楼主的用意并不是解决那几个字的问题。而是解决16进制转换的通用......
作者: terse    时间: 2014-1-19 20:11

那变通一下就可以了啊
作者: CrLf    时间: 2014-1-19 20:26

本帖最后由 CrLf 于 2014-1-19 20:31 编辑

js无压力
  1. eval('String.fromCharCode('+'4D534D38393630'.replace(/(..)/g,"0x$1,")+'"")')
复制代码
内嵌bat可像这样:
  1. @set @n=0;WScript.Echo(eval('String.fromCharCode('+WScript.Arguments(0).replace(/(..)/g,"0x$1,")+'"")'));/*
  2. @echo off
  3. set "hex=4D534D38393630"
  4. for /f "delims=" %%a in ('cscript -nologo -e:jscript "%~0" %hex%') do set "bin=%%a"
  5. echo %hex% = %bin%
  6. pause */
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2