2011-05-25 88 views
6

zlib是否允许从文件中间进行解压缩?
我的意思是,如果我打电话给inflate,指向压缩数据中间的数据流而不调用inflate来处理中间数据,它会起作用吗?从zlib FAQzlib是否允许从文件中间进行解压缩

+0

为什么不试试呢? – Ben 2011-05-25 07:19:06

+1

我希望有人可能已经知道我读过的答案 – 2011-05-25 07:19:57

+0

。我想我一定是错过了它,或者忘记了它:P – 2011-05-25 09:00:31

回答

8

复制(强调的是矿):

28. 能否随机访问的压缩流数据?

不,没有一些准备。如果在定期压缩时使用Z_FULL_FLUSH,请仔细写下所有未完成的数据并保留这些位置的索引,然后您可以在这些位置开始解压缩。你必须小心不要太频繁地使用Z_FULL_FLUSH,因为它会显着降低压缩率。或者,您可以扫描一次deflate流以生成索引,然后使用该索引进行随机访问。见例子/ zran.c。