我正在尝试解开我的Python应用中通过JavaScript的FileReader Readasbinary String方法发送的二进制字符串。看来我可以将结构模块用于此。我不确定要确切的拆卸格式提供什么。

有人可以确认这是正确的方法,如果是这样,我应该指定哪种格式?

根据JS文档:

结果将包含文件的数据作为二进制字符串。每个字节由[0..255]范围内的整数表示。

有帮助吗?

解决方案

听起来好像您只有一个普通的字符串(或 bytes python 3)中的对象,所以我不确定您需要打开什么包装。

访问字节数据的一种方法是使用 bytearray;这使您可以轻松地索引字节数据:

>>> your_data = b'\x00\x12abc'
>>> b = bytearray(your_data)
>>> b[0]
0
>>> b[1]
18

如果您将其作为字符串,并且不想使用bytearray(需要Python 2.6或更高版本),请使用 ord 将角色转换为整数。

>>> ord(your_data[1])
18

如果您的二进制数据在代表具有特殊endianness的整数或浮子的字节组方面具有特定的解释,那么 struct 模块当然是您的朋友,但是您不需要它只是检查字节数据。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top