• 4593阅读
  • 8回复

[提问]如何内存解压 [复制链接]

上一主题 下一主题
离线stlcours
 

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

只看该作者 1楼 发表于: 2015-12-10
Qt内置了压缩与解压功能,而且支持ZIP,而且解压就是内存中完成的。
qCompress 是压缩
qUncompress 是解压
你看一下文档立马就会用了
ZIP 和 QT的压缩与解压 有一些区别,但是是能兼容的。
但是你完全没必要用ZIP了,因为完整的ZIP是涉及了文件系统,你只是压缩数据。
(づ ̄ 3 ̄)づ
离线sevencat

只看该作者 2楼 发表于: 2015-12-10
http://www.winimage.com/zLibDll/minizip.html
我一般用那个unzip.h里的文件来内存解压zip文件。
战争就是和平,自由就是奴役,愚味就是力量
离线sevencat

只看该作者 3楼 发表于: 2015-12-10
https://github.com/nmoinvaz/minizip
这个应该也可以。
战争就是和平,自由就是奴役,愚味就是力量
离线stlcours

只看该作者 4楼 发表于: 2015-12-10
回 sevencat 的帖子
sevencat:https://github.com/nmoinvaz/minizip
这个应该也可以。 (2015-12-10 17:34) 

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

只看该作者 5楼 发表于: 2015-12-11
我知道,我经常内存解压的。我记不得是哪个了,反正我用过。
战争就是和平,自由就是奴役,愚味就是力量
离线johnyork

只看该作者 6楼 发表于: 2015-12-14
一点想法:是否可以考虑使用内存文件?加个重定向?
离线sharkoasis

只看该作者 7楼 发表于: 2018-05-19
好像有个QT的实现,叫quazip,你可以看看!
离线jigetage

只看该作者 8楼 发表于: 2018-05-23
回 sharkoasis 的帖子
sharkoasis:好像有个QT的实现,叫quazip,你可以看看! (2018-05-19 20:26) 

厉害了~
快速回复
限100 字节
 
上一个 下一个