zlib是否允许从文件中间解压缩?

7

zlib是否允许从文件中间解压缩?
我的意思是,如果我使用指向已压缩数据中间的流调用inflate,而没有调用inflate来处理中间之前的数据,那么它会起作用吗?


1
我希望有些人已经知道答案。 - 小太郎
我已经读过了。我想我可能只是错过了它或忘记了它 :P - 小太郎
3
几乎所有的 SO 上的问题都可以通过 RTFM 获得答案,但这并不意味着它们是不好的问题。 - Roddy
1个回答

9
zlib FAQ中摘录(重点是我的):
28. 我能在压缩流中随机访问数据吗? 不行,除非进行一些准备工作。如果在压缩时定期使用Z_FULL_FLUSH,仔细地在这些点写下所有待处理的数据,并保留这些位置的索引,那么就可以从这些点开始解压缩。你必须小心不要过于频繁地使用Z_FULL_FLUSH,因为它会严重降低压缩效率。或者,您可以扫描一次deflate流以生成索引,然后将该索引用于随机访问。请参阅examples / zran.c。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接