Pythonで開いたファイルがあり、別の出力ファイルに書き込んでいます。ファイルサイズが16の倍数である必要があるので、これが私が考案したものです。
with open(input_file, 'rb') as infile:
with open(output_file, 'wb') as outfile:
while True:
input_chunk = infile.read(64)
if len(input_chunk) == 0:
break
elif len(input_chunk) % 16 > 0:
input_chunk.extend([0 for i in range(len(input_chunk) % 16)])
output_file.write(input_chunk)
残念ながら、ゼロを次のように追加することはできません。
AttributeError: 'str' object has no attribute 'extend'
まず、バイトの配列ではなく、なぜここに文字列があるのですか?バイナリモードでバイナリファイルを読んでいます。
0
次に、文字列を処理している場合、その文字列の最後に値を含むバイト数を書き込むにはどうすればよいですか?