首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python: tarfile流

Python: tarfile流
EN

Stack Overflow用户
提问于 2015-12-04 10:46:58
回答 1查看 6.9K关注 0票数 5

我想读一些文件从一个tarball,并保存到一个新的tarball。这是我写的代码。

代码语言:javascript
复制
archive = 'dum/2164/archive.tar'

# Read input data.
input_tar = tarfile.open(archive, 'r|')
tarinfo = input_tar.next()
input_tar.close()

# Write output file.
output_tar = tarfile.open('foo.tar', 'w|')
output_tar.addfile(tarinfo)
output_tar.close()

不幸的是,输出tarball是不好的:

代码语言:javascript
复制
$ tar tf foo.tar
./1QZP_A--2JED_A--not_reformatted.dat.bz2
tar: Truncated input file (needed 1548288 bytes, only 1545728 available)
tar: Error exit delayed from previous errors.

有什么线索吗?如何使用Python动态读取和编写tarball?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-07 10:35:40

好的,这就是我怎么做到的。

代码语言:javascript
复制
archive = 'dum/2164/archive.tar'

# Read input data.
input_tar = tarfile.open(archive, 'r|')
tarinfo = input_tar.next()
fileobj = input_tar.extractfile(tarinfo)

# Write output file.
output_tar = tarfile.open('foo.tar', 'w|')
output_tar.addfile(tarinfo, fileobj)

input_tar.close()
output_tar.close()
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34086524

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档