您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python中的Tarfile:我是否可以仅提取一些数据来更有效地解压缩?

Python中的Tarfile:我是否可以仅提取一些数据来更有效地解压缩?

问题在于tar文件没有中央文件列表,但按顺序存储文件在每个文件之前带有标题tar然后通过gzip将文件压缩以提供给您tar.gz。对于tar文件,如果不想提取某个文件,则只需跳过header->size存档中的下一个字节,然后读取下一个标头。如果归档文件被额外压缩,则您仍将不得不跳过那么多字节,不仅不是在归档文件内,而且还要在解压缩的数据流内对于某些压缩格式有效,而对于另一些格式,则需要跳过这两个字节之间的所有内容)。

gzip属于压缩方案的后一类。因此,尽管您通过不将不需要的文件写入磁盘节省了一些时间,但是您的代码仍将其解压缩。您可以通过重写非gzip存档的_Stream来克服该问题,但是对于您的gz文件,您无能为力。

python 2022/1/1 18:37:04 有608人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶