Python的 - 如何编辑由字节十六进制文件字节
-
19-09-2019 - |
题
我希望能够打开一个图像文件和额外的十六进制值逐字节。我不知道如何做到这一点,谷歌搜索“蟒蛇字节编辑”和“巨蟒字节数组”,没有拿出任何东西,令人惊讶。有人能指出我朝着我需要使用,具体方法我可以谷歌,或教程库/导游?
解决方案
Python标准库具有MMAP模块,其可以被用来做的正是这种。采取上进一步的信息,文档。
其他提示
根据你想这样做可能足以打开二进制文件模式并与正常文件读出的数据>功能:
# load it
with open("somefile", 'rb') as f:
data = f.read()
# do something with data
data.reverse()
# save it
with open("somefile.new", 'wb') as f:
f.write(data)
Python并不真正关心如果data
字符串包含“二元”或“文本”的数据。如果你只想做简单的修改,以合理大小的文件,这可能是不够好。
在Hachoir框架是一组Python库和工具来解析和编辑二进制文件:
http://pypi.python.org/pypi/hachoir-core
它具有常见的文件类型的知识,所以这可能只是你需要什么。
查看 stuct 模块。
这个模块执行表示为Python字符串的Python值和C的结构之间的转换。它使用格式字符串(在下面解释),作为C的结构的布局设计和在Python值的预期转换到/紧凑的描述。这可以在处理存储在文件中或从网络连接,其他来源中的二进制数据被使用。
不隶属于 StackOverflow