访问zip文件中文件的最快方法是什么?

时间:2011-05-27 15:57:51

标签: c++ indexing zip gzip zipfile

从zip文件中读取单个文件(以随机方式)的最快方法是什么?

据我所知,zip文件有一个存储单个文件条目的目录,我可以扫描这个目录来构建一个外部索引。是否有任何标准化的方法(即现有的库)已经这样做了?或者我可以使用特殊类型的zip文件?

2 个答案:

答案 0 :(得分:3)

Minizip似乎是一个读取或编写zip文件的好库。它使用zlib库。

http://www.winimage.com/zLibDll/minizip.html

答案 1 :(得分:3)

扫描目录并构建索引是提供对zip文件中存档的压缩条目的随机访问的最快且最好的方法。该目录通常很小,位于存档的末尾。如果您有可搜索的媒体,那么这就是您想要的。

zip格式记录得非常好;做起来并不难。然而,魔鬼在细节中。如果你的zip文件使用ZIP64扩展,加密,拆分档案..这就是它变得棘手的时候。对于简单的zip文件,做你想象的并不是那么困难。

使用外部库仍然会更容易。