PKu*_*uhn 6 python tar python-3.x
是否可以在tar归档文件中直接创建文件?
上下文:我有一个方法可以创建某种形式的内容,例如字符串。我想将此内容另存为tar存档中的文件。我必须创建一个tmpfile还是可以直接在tar归档文件中创建一个文件?
def save_files_to_tar(tarname):
archive = tarfile.open(tarname, mode='w')
for _ in range(some_number):
content = get_content()
# HERE add content to tar
Run Code Online (Sandbox Code Playgroud)
小智 5
我认为您应该使用StringIO创建一个类似于内存对象的文件,并使用tarInfo描述一个伪造的文件,如下所示:
import StringIO
import tarfile
archive = tarfile.open(tarname, mode='w')
for _ in range(some_number):
content = get_content()
s = StringIO.StringIO()
s.write(content)
s.seek(0)
tarinfo = tarfile.TarInfo(name="my filename")
tarinfo.size = len(s.buf)
archive.addfile(tarinfo=tarinfo, fileobj=s)
archive.close()
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助。
| 归档时间: |
|
| 查看次数: |
1169 次 |
| 最近记录: |