我正在尝试在我的 python 应用程序中解压缩通过 Javascript 的 FileReader readAsBinaryString 方法发送的二进制字符串。看来我可以为此使用 struct 模块。我不确定要提供什么作为解包的格式。
有人可以确认这是正确的方法吗?如果可以,我应该指定什么格式?
根据 JS 文档:
结果将包含文件数据作为二进制字符串。每个字节由 [0..255] 范围内的整数表示。
我正在尝试在我的 python 应用程序中解压缩通过 Javascript 的 FileReader readAsBinaryString 方法发送的二进制字符串。看来我可以为此使用 struct 模块。我不确定要提供什么作为解包的格式。
有人可以确认这是正确的方法吗?如果可以,我应该指定什么格式?
根据 JS 文档:
结果将包含文件数据作为二进制字符串。每个字节由 [0..255] 范围内的整数表示。
听起来好像您只有一个普通的字符串(或bytes
Python 3 中的对象),所以我不确定您需要解压缩什么。
访问字节数据的一种方法是使用bytearray
; 这使您可以轻松地索引字节数据:
>>> your_data = b'\x00\x12abc'
>>> b = bytearray(your_data)
>>> b[0]
0
>>> b[1]
18
如果您将其作为字符串并且不想使用字节数组(需要 Python 2.6 或更高版本),则使用ord
将字符转换为整数。
>>> ord(your_data[1])
18
如果您的二进制数据在表示整数或具有特定字节顺序的浮点数的字节组方面具有特定的解释,那么该struct
模块肯定是您的朋友,但您不需要它来检查字节数据。