如何将Python中的byte array写入并追加到.bin文件?
将Byte Array追加到.bin文件的实现方法
首先先修正你读取.bin文件的代码——读取二进制文件时,必须用二进制读取模式('rb'),否则在不同编码环境下可能出现读取错误:
with open('test.bin', 'rb') as x: arrayneeded = bytearray(x.read()) print(arrayneeded)
接下来是你要的反向操作:将已有的byte array追加到.bin文件,核心是用二进制追加模式('ab')打开文件,直接调用write()方法写入bytearray即可,无需额外转换(因为bytearray本身就是二进制可写入类型):
示例代码
假设你已经有一个待写入的byte array:
# 示例待写入的byte array my_bytearray = bytearray(b'\x01\x02\x03\x04') # 追加到test.bin文件 with open('test.bin', 'ab') as f: f.write(my_bytearray)
关键说明
'ab'模式:a代表追加(不会覆盖原有内容),b代表二进制模式,这两个组合是处理二进制文件追加的标准方式。write()方法直接支持bytearray类型作为参数,不需要额外转换为bytes(当然转成bytes也能写,比如f.write(bytes(my_bytearray)),但没必要)。
内容的提问来源于stack exchange,提问作者ligma
相关产品推荐
相关产品推荐

