gpt4 book ai didi

python - 在python中创建二进制文件

转载 作者:太空宇宙 更新时间:2023-11-03 14:25:08 26 4
gpt4 key购买 nike

我有一个名为 file1.bin 的非常大的二进制文件,我想创建一个文件 file2.bin,它只包含 file1.bin 的前 32kb。

所以我正在读取 file1 如下:

myArr = bytearray()

with open(r"C:\Users\User\file1.bin", "rb") as f:
byte = f.read(1)
for i in range(32,678):
myArr.extend(byte)
byte = f.read(1)

我的问题是:如何从这里开始从 myArr 创建 file2 二进制文件?

我试过了

with open(r"C:\Users\User\file2.bin", "w") as f:
f.write(myArr)

但这会导致:

f.write(myArr)
TypeError: must be string or pinned buffer, not bytearray

最佳答案

您需要以二进制写入模式(wb)打开文件。

with open('file2.bin', 'wb') as f:
f.write(myArr)

此外,您从输入文件中读取的方式非常低效。 f.read() 允许您一次读取多个字节:

with open('file1.bin', 'rb') as f:
myArr = bytearray(f.read(32678))

将完全按照您的意愿行事。

关于python - 在python中创建二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21910059/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com