BZ2Compressorオブジェクトを使用してファイルをbz2-compressするコードを作成しました。
def compressFile(file_name, new_name):
comp = bz2.BZ2Compressor()
comFile = open(new_name, "wb")
oldFile = open(file_name, "rb")
while True:
data = oldFile.read(1024*1024)
if(len(data) == 0):
break
compressed = comp.compress(data)
comFile.write(compressed)
comp.flush()
comFile.close()
エラーが発生せず、ファイルが作成されますが、アーカイブマネージャーでファイルを開きたい場合、非特定のエラーが発生します。私は自分の間違いを見つけることができず、このモジュールは十分に文書化されていません。