加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

DOS批处理脚本转换字符串2十六进制

发布时间:2020-12-14 01:43:53 所属栏目:Windows 来源:网络整理
导读:如何在DOS批处理脚本中将sring转换为十六进制? 例如,将“abcd”转换为“61626364”. 因为’a’是0x61 …… 我试图从网上找到一个解决方案,但是找不到我的答案. @echo offsetlocal EnableDelayedExpansionrem Store the string in chr.tmp fileset /P "=%~1"
如何在DOS批处理脚本中将sring转换为十六进制?
例如,将“abcd”转换为“61626364”.
因为’a’是0x61 ……

我试图从网上找到一个解决方案,但是找不到我的答案.

@echo off
setlocal EnableDelayedExpansion

rem Store the string in chr.tmp file
set /P "=%~1" < NUL > chr.tmp

rem Create zero.tmp file with the same number of Ascii zero characters
for %%a in (chr.tmp) do fsutil file createnew zero.tmp %%~Za > NUL

rem Compare both files with FC /B and get the differences
set "hex="
for /F "skip=1 tokens=2" %%a in ('fc /B chr.tmp zero.tmp') do set "hex=!hex!%%a"

del chr.tmp zero.tmp
echo %hex%

输出示例:

C:&; test.bat abcd
61626364

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读