2016-06-01 14 views
0

次のように私は、zipファイルを作成したPythonのzipファイルモジュールの使用:作成したZipファイルをPythonでファイルシステムに保存するには?

s = StringIO() 
zip_file = zipfile.ZipFile(s, "w") 
zip_file.write('/local/my_files/my_file.txt') 
s.seek(0) 

を、今、私はこのzip_filemy_file.zipとしてパス/local/my_files/で私のファイルシステムに保存することにしたいです。

with open(dest_file, 'w') as out_file: 
    for line in in_file: 
     out_file.write(line) 

しかし、私はこれでZIPファイルを保存し達成することができないと思う:一般的に、私は次のフローを使用noramlファイルを保存する 。これを行うには、誰でも私を助けてください。

答えて

2
zip_file = zipfile.ZipFile("/local/my_files/my_file.zip", "w") 
zip_file.write('/local/my_files/my_file.txt') 
zip_file.close() 

ZipFileオブジェクトの初期化の最初の引数は、zipファイルを保存するためのパスです。あなたがたStringIOを使用する必要がある場合

0

、ちょうどこのコード試してみてください。

from StringIO import StringIO 
import zipfile 

s = StringIO() 
with zipfile.ZipFile(s, "w", compression=zipfile.ZIP_DEFLATED) as zf: 
    zf.write('/local/my_files/my_file.txt') 

with open('/local/my_files/my_file.zip', 'wb') as f_out: 
    f_out.write(s.getvalue()) 

をそれとも、簡単な方法でそれを行うことができます。

import zipfile 

with zipfile.ZipFile("/local/my_files/my_file.zip", "w", compression=zipfile.ZIP_DEFLATED) as zf: 
    zf.write("/local/my_files/my_file.txt") 
関連する問題