查看完整版本: [-- 如何内存解压 --]

QTCN开发网 -> Qt基础编程 -> 如何内存解压 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

stlcours 2015-12-10 00:36

如何内存解压

我把用户的配置文件(一个xml文件)压缩在zip文件里,我希望读取zip文件以后,在内存里解压,然后直接读取相关内容。这样可以避免把一些核心数据直观的显示给用户看。请问有没有相关办法?在网上只搜到了c语言和zlib的方法,但我希望是C++并且是zip格式,最好能和QT相关的方法,谢谢!

20091001753 2015-12-10 01:41
Qt内置了压缩与解压功能,而且支持ZIP,而且解压就是内存中完成的。
qCompress 是压缩
qUncompress 是解压
你看一下文档立马就会用了
ZIP 和 QT的压缩与解压 有一些区别,但是是能兼容的。
但是你完全没必要用ZIP了,因为完整的ZIP是涉及了文件系统,你只是压缩数据。

sevencat 2015-12-10 17:33
http://www.winimage.com/zLibDll/minizip.html
我一般用那个unzip.h里的文件来内存解压zip文件。

sevencat 2015-12-10 17:34
https://github.com/nmoinvaz/minizip
这个应该也可以。

stlcours 2015-12-10 18:16
sevencat:https://github.com/nmoinvaz/minizip
这个应该也可以。 (2015-12-10 17:34) 

好像两个zip不一样。好像前一个不可以,后一个可以。注意,我要的是内存解压,即zip在磁盘上,解压缩后,不在磁盘上产生新文件,而是在内存里,然后我就直接读取了。

sevencat 2015-12-11 08:44
我知道,我经常内存解压的。我记不得是哪个了,反正我用过。

johnyork 2015-12-14 23:00
一点想法:是否可以考虑使用内存文件?加个重定向?

sharkoasis 2018-05-19 20:26
好像有个QT的实现,叫quazip,你可以看看!

jigetage 2018-05-23 12:02
sharkoasis:好像有个QT的实现,叫quazip,你可以看看! (2018-05-19 20:26) 

厉害了~


查看完整版本: [-- 如何内存解压 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled