我有一个大gzip
文件,我想使用仅读取其中的一部分seek
。
关于使用seek
on gzip
文件,这个page says:
seek() 位置是相对于未压缩数据的,因此
调用者甚至不需要知道数据文件是否被压缩。
这是否意味着seek
必须从文件开头读取数据并解压到目标位置吗?
Yes. 这是代码:
elif self.mode == READ:
if offset < self.offset:
# for negative seek, rewind and do positive seek
self.rewind()
count = offset - self.offset
for i in range(count // 1024):
self.read(1024)
self.read(count % 1024)
这里讨论替代方案。该问题是固有的gzip
format.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)