您的位置:首页 > 编程语言 > Python开发

python3 tarfile内存内打包文件

2015-10-16 10:41 736 查看
# -*- coding: utf-8 -*-
import tarfile
import os
from io import BytesIO,StringIO
def tarDict(dict1):
fgz = BytesIO()
tar = tarfile.open(mode="w",fileobj=fgz)
ks=dict1.keys()
for key in ks:
tarinfo=tarfile.TarInfo(name=key)
f1=BytesIO(dict1[key].encode())
tarinfo.size=len(f1.read())
f1.seek(0)
tar.addfile(tarinfo,fileobj=f1)
tar.close()
return fgz
def output(fgz):
f=open("output.tar","w")
fgz.seek(0)
f.write(fgz.read().decode())
f.close()
byteio=tarDict({"a.txt":"aaaaaaaaaaaa","b.txt":"bbbbbbbbbbbbb"})
output(byteio)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python tarfile Bytes