Python:将数据文件格式转换为字符串



我有一个文件,当file命令运行时,有以下输出:

#file test.bin
#test.bin : data
#file -i test.bin
#test.bin: application/octet-stream; charset=binary

我想读取这个文件的内容,并将其转发给一个python库,该库接受这个读数据作为字符串。

file = open("test.bin", "rb")
readBytes = file.read()            # python type : <class 'bytes'>

output = test.process(readBytes)   # process expects a string

我已经尝试过str(readBytes),但是没有工作。我看到文件test.bin中也有不可打印的字符串,因为strings test.bin的输出产生的输出远远小于文件中存在的实际字节。

是否有一种方法来转换字节读成字符串?还是我在努力实现一些毫无意义的目标?

尝试使用Bitstring。它是读取位的好程序包。

# import module
from bitstring import ConstBitStream
# read file
x = ConstBitStream(filename='file.bin')
# read 5 bits
output = x.read(5)
# convert to unsigned int
int_val = output.uint

你的意思是?

output = test.process(readBytes.decode('latin1'))

相关内容

  • 没有找到相关文章

最新更新