Python - 无法正确读取十六进制 0A

我试图从十六进制文件中一次读取 2 个字节。


f = open(filename, "rb+")



seekv = 0

x = 16

while x > 0:

     x = x-1

     f.seek(seekv)

     seekv = seekv + 1

     Nextb = binascii.hexlify(f.readline(2))

     print Nextb

问题是,如果这 2 个字节是 0a0a,它只会读取一个字节 0a。我怀疑这与 0x0A 是 ASCII 中的新行有关,但这不应该发生。


缥缈止盈
浏览 238回答 1
1回答

天涯尽头无女友

您正在使用 f.readline(2) 而不是 f.read(2)readline 将使用其中一个 0a 作为标记来了解新行的开始位置。如果您切换到 f.read(2),您应该会看到两者。您真的不应该将 readline 与二进制数据一起使用。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python