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

如何用Python将指定十六进制字符串解码为目标格式?

Python解码十六进制字符串为结构化数据

实现步骤

  1. 预处理十六进制字符串:去除前缀0x和换行符,转换为字节对象。
  2. 解析数值字段:按固定32字节长度,以大端字节序转换为整数(适配超长256位数值)。
  3. 解析字符串字段:按固定长度截取字节后,以空字符\x00截断并解码为UTF-8字符串。

完整代码

import datetime

# 原始十六进制字符串
hex_str = "0x00000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000006331b7e0000000000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000474657374000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007566963746f727900000000000000000000000000000000000000000000000000"

# 预处理:去掉0x前缀和换行,转成字节
raw_hex = hex_str.replace('0x', '').replace('\n', '')
data = bytes.fromhex(raw_hex)

# 解析数值字段(每个字段32字节,大端序)
offset = 0
field1 = int.from_bytes(data[offset:offset+32], byteorder='big')
offset += 32
field2 = int.from_bytes(data[offset:offset+32], byteorder='big')
offset += 32
field3 = int.from_bytes(data[offset:offset+32], byteorder='big')
offset += 32
field4 = int.from_bytes(data[offset:offset+32], byteorder='big')
offset += 32
field5 = int.from_bytes(data[offset:offset+32], byteorder='big')
offset += 32
field6 = int.from_bytes(data[offset:offset+32], byteorder='big')
offset += 32

# 解析第一个字符串(32字节,空字符截断)
str1 = data[offset:offset+32].split(b'\x00')[0].decode('utf-8')
offset += 32

# 跳过32字节的全0字段
offset += 32

# 解析第二个字符串(64字节,空字符截断)
str2 = data[offset:offset+64].split(b'\x00')[0].decode('utf-8')

# 输出结果
print("解析结果:")
print(f"字段1: {field1}")
print(f"字段2: {field2}")
print(f"字段3: {field3}")
print(f"  UTC时间转换: {datetime.datetime.utcfromtimestamp(field3)}")
print(f"字段4: {field4}")
print(f"字段5: {field5}")
print(f"字段6: {field6}")
print(f"字符串1: {str1}")
print(f"字符串2: {str2}")

输出结果

解析结果:
字段1: 4
字段2: 8
字段3: 1667675904
  UTC时间转换: 2022-10-05 02:38:24
字段4: 0
字段5: 12
字段6: 0
字符串1: GFW7@
字符串2: ufactory

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 03:20:14