You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何按特定规则拆分文本文件中的十六进制数并生成新文件

文本处理需求

现有output.txt文件,内容如下:

number="0x12" bytesize="4" info="0x00000012"
number="0xA5" bytesize="8" info="0x00000000bbae321f"
number="0x356" bytesize="4" info="0x00000234"
number="0x48A" bytesize="8" info="0x00000000a18c3ba3"
number="0x156" bytesize="2" info="0x001A"
number="0x867" bytesize="1" info="0x0b"

需要生成new.txt文件,规则如下:

  • 当bytesize为8时:
    1. 将info字段的十六进制字符串拆分为后8位(如0xbbae321f)和前8位(如0x00000000)
    2. 保留原number值,搭配拆分出的后8位info生成一行(格式:number="原数值" info="后8位")
    3. 原number的十六进制值加上0x32得到新number,搭配拆分出的前8位info生成一行(格式:number="新数值" info="前8位")
  • 当bytesize为1、2、4时:
    直接保留原number和info字段(去掉bytesize字段)写入一行(格式:number="原数值" info="原info")

最终new.txt的预期格式示例:

number="0x12" info="0x00000012"
number="0xA5" info="0xbbae321f"
number="0xD7" info="0x00000000"
number="0x356" info="0x00000234"
number="0x48A" info="0xa18c3ba3"
number="0x4BC" info="0x00000000"
number="0x156" info="0x001A"
number="0x867" info="0x0b"

注:0xD7 = 0xA5 + 0x32,0x4BC = 0x48A + 0x32

实现脚本(Python)

可以用以下Python脚本完成上述处理:

with open('output.txt', 'r') as infile, open('new.txt', 'w') as outfile:
    for line in infile:
        line = line.strip()
        if not line:
            continue
        # 解析行内字段
        num_part, size_part, info_part = line.split()
        
        # 提取number的十六进制数值
        num_val = int(num_part.split('=')[1].strip('"'), 16)
        # 提取bytesize数值
        bytesize = int(size_part.split('=')[1].strip('"'))
        # 提取info的字符串内容
        info_str = info_part.split('=')[1].strip('"')
        
        if bytesize == 8:
            # 拆分info的前8位和后8位
            prefix = '0x' + info_str[2:10]
            suffix = '0x' + info_str[10:]
            # 写入原number对应后8位的行
            outfile.write(f'{num_part} info="{suffix}"\n')
            # 计算新number并写入对应前8位的行
            new_num = hex(num_val + 0x32)
            outfile.write(f'number="{new_num}" info="{prefix}"\n')
        else:
            # 直接写入number和info字段
            outfile.write(f'{num_part} {info_part}\n')
使用说明
  1. 将上述脚本保存为process.py
  2. 确保output.txt与脚本在同一目录下
  3. 执行脚本:python process.py
  4. 执行完成后,同目录下会生成目标文件new.txt

内容的提问来源于stack exchange,提问作者V_S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 12:15:47