【发布时间】:2017-04-30 08:57:33
【问题描述】:
如何使用 Python 查找二进制文件中两个文件偏移之间的特定字节序列?
我想打开一个二进制文件来搜索两个文件偏移量start 和end 之间的特定字节序列0x66,0x66,...,0x66。
我的想法是使用rb 打开文件,然后使用fseek() 将文件位置设置为start。然后对于文件中的每个位置,我读取 16 个字节并将它们与上面的序列(长度为 16 个字节)进行比较。
但是,必须有更简单的方法来做到这一点?
【问题讨论】:
-
文件有多大?如果它不够小,无法阅读全文,您可以使用memory-mapped file。
-
假设 ~100MB。
-
阅读全文应该没问题,但我认为
mmap会更快。
标签: python binary python-3.4