Python 標準ライブラリ lzma LZMA圧縮と展開
Publish date: 2021-08-09
ライブラリlzmaを使うとLZMA圧縮と展開を行うことができます。
lzma.openを使ったLZMAファイルの圧縮と展開
lzma.open(filename, mode=“rb”, *, format=None, check=-1, preset=None, filters=None, encoding=None, errors=None, newline=None)
import lzma
with lzma.open('./text.xz', 'wb') as f:
text = 'テストファイル'.encode('utf-8')
f.write(text)
with lzma.open('./text.xz', 'rb') as f:
read_text = f.read()
print(read_text.decode())
存在するファイルのLZMA圧縮
import shutil
with open('./sample.txt', 'rb') as f_in:
with lzma.open('./sample.txt.xz', 'wb') as f_out:
shutil.copyfileobj(f_in, f_out)
lzma.LZMAFileを使ったLZMAファイルの圧縮と展開
lzma.LZMAFile(filename=None, mode=“r”, *, format=None, check=-1, preset=None, filters=None)
with lzma.LZMAFile('./test.xz', 'wb') as gf:
gf.write('テストファイル'.encode('utf-8'))
with lzma.LZMAFile('./test.xz', 'rb') as gf:
print(gf.readline().decode())