qt开发解压缩zip文件实现

 作者开发环境:Qt5.8 ,win10

总体思路:首先我们编译zip源码,生成zip的动态库;然后再编译quazip源码,得到quazip的动态库;最后在我们的程序中去调用。

详细步骤:

1、编译zlib

zlib源码下载:zlib Home Site

zlib的编译,参考:QT 编译zlib_qt zlib-CSDN博客

2、编译quazip

QuaZip是Qt对Zlib进行封装,用于压缩和解压文件的库。

quazip源码的下载:QuaZIP download | SourceForge.net

下载下来后,如果直接编译会报错,我们做如下更改:

(1)打开刚刚下载的quazip.pro,第二行SUBDIRS=quazip qztest 改为SUBDIRS=quazip 

(2)将qt安装目录下的两个头文件拷贝出来(zlib.h和zconf.h),不同版本路径可能有出入。将两个头文件拷贝到quazip项目路径中,然后添加到项目程序中。

(3)在quazip中创建lib文件夹

​编辑
将zlib编译好的动态库拷贝到lib文件夹下

​编辑
修改quazip.pro工程文件。添加动态库路径

LIBS += -L$$PWD/lib -lzlib1

       

        编译成功后,生成的libquazip.a,quazip.dll(如果是debug版本编译生成的就是libquazipd.a和 quazipd.dll)就是我们需要的。

3、创建测试工程

        同理,创建include和lib目录,分别放头文件和动态库文件。从quazip拷贝所有头文件到include文件夹下,拷贝刚刚生成的动态库文件到lib文件夹下(quazip.dll、libquazipd.a是quazip动态库,zlib1.dll是zlib动态库)。

​编辑

修改quazipTest.pro工程文件,添加头文件路径和动态库路径,这样环境就搭建好了。

​编辑

4、添加压缩解压代码

包含头文件    #include "JlCompress.h"

JlCompress::compressDir("D:/testzip/a.zip", "D:/testzipdir1");  //压缩文件

JlCompress::extractDir("D:/testzip/a.zip", "D:/testzipdir2");      //解压缩

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sdkdslx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值