如何从 python 创建十六进制格式的转储文件
How to create a dump file in hex format from python
我有一个整数数组,我想使用 python 脚本将其转储到一个二进制文件(具体为 HEX 文件)中
我写了一个代码
MemDump = Debug.readMemory(ic.IConnectDebug.fRealTime, 0, 0xB0009CC4, 0xCFF, 1)
MemData = MemDump[:3321]
# Create New file in binary mode and open for writing
fp = open("MON.dmp", 'w')
sys.stdout = fp
for byte in MemData:
print(byte)
此处 MemDump 包含一个整数值数组。我想从这个数组的前 3321 个字节转储到文件中。
在这里,我在文件 MON.dmp 中获取输出,但在 ASCII 格式中。
如果我使用
创建二进制格式的文件
fp = open("MON.dmp", 'wb')
print(byte) 命令给我一个错误
'str' does not support the buffer interface
在此先感谢您。
您需要将 byte
转换为二进制字符串,然后才能将其写入以 'wb' 模式打开的文件。这可以使用 bytearray()
函数来完成。所以在这种情况下你应该使用:
for byte in MemData:
print(bytearray(byte))
我有一个整数数组,我想使用 python 脚本将其转储到一个二进制文件(具体为 HEX 文件)中 我写了一个代码
MemDump = Debug.readMemory(ic.IConnectDebug.fRealTime, 0, 0xB0009CC4, 0xCFF, 1)
MemData = MemDump[:3321]
# Create New file in binary mode and open for writing
fp = open("MON.dmp", 'w')
sys.stdout = fp
for byte in MemData:
print(byte)
此处 MemDump 包含一个整数值数组。我想从这个数组的前 3321 个字节转储到文件中。 在这里,我在文件 MON.dmp 中获取输出,但在 ASCII 格式中。 如果我使用
创建二进制格式的文件fp = open("MON.dmp", 'wb')
print(byte) 命令给我一个错误
'str' does not support the buffer interface
在此先感谢您。
您需要将 byte
转换为二进制字符串,然后才能将其写入以 'wb' 模式打开的文件。这可以使用 bytearray()
函数来完成。所以在这种情况下你应该使用:
for byte in MemData:
print(bytearray(byte))