2

我有一个原始二进制数据,我想将其转换为可读文本。

文本包含一些不可读的内容,它还具有特殊字符,例如带有 NUL 字的黑框或“ N–[«´N–[« )› )ÿ ”。我只是python的新手。

这是我的代码

import struct
file = open('rawbinary.txt')
text = file.read()
struct.unpack("iiiii", text[:20])

我的输出是:

(2113933569, 67305475, -80477197, 1536577129, 1312228259)

如果添加这个:

text[:10]

我的输出是

'\x01\x11\x00~\x03\x00\x03\x04\xf3\x03'

我做对了吗?我下一步要做什么?

4

1 回答 1

5

使用内置的ord函数。

with open("/bin/ls", "rb") as fin:
  buf = fin.read()
bytes = map(ord, buf)    
print bytes[:10]

输出:

[127, 69, 76, 70, 2, 1, 1, 0, 0, 0]
于 2013-10-21T05:28:46.900 回答