天天看点

Quazip解压缩文件

  Quazip是Qt平台下面的一个压缩解压缩库。Quazip编译需要依赖zlib库,前面已经讲过windows系统编译zlib—>windows系统编译zlib。

  在已编译zlib的基础上,本文继续来讲Quazip的编译以及测试工程中的解压缩。大致流程为:下载Quazip源码->编译Quazip并生成库->将头文件和生成的库复制粘贴到测试工程文件目录中->修改测试工程的pro文件并添加解压缩测试代码。

编译quazip

  从官网下载Quazip源码压缩包,官网地址:http://quazip.sourceforge.net/ 在官网可以看到它支持的平台以及下载入口。

Quazip解压缩文件

  下载压缩包之后解压,在quazip文件夹下创建lib文件夹,将之前zlib编译生成的zlib1.dll库复制粘贴进来。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5AuhFHEO-1621995996135)(https://gitee.com/a-shu123/picture/raw/master/2021-5-24/1621854609799-1.png)]

  在quazip文件夹下创建include文件夹,将zlib中的头文件zlib.h以及zconf.h复制粘贴进来。

Quazip解压缩文件

  在Qt Creator中打开quazip文件夹下的工程文件,在pro文件中加入以下代码:

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

  即:

Quazip解压缩文件

  分别编译Debug和Release,

Quazip解压缩文件

  编译成功后,在生成的build-quazip-Desktop_Qt_5_9_1_MinGW_32bit-Release文件夹的release下,会生成生成libquazip.a和quazip.dll库。同样,在生成的build-quazip-Desktop_Qt_5_9_1_MinGW_32bit-Debug文件夹的debug下,会生成生成libquazipd.a和quazipd.dll库。

Quazip解压缩文件

解压缩测试

  新建测试工程,在测试工程文件夹下,新建lib文件夹,将Quazip刚才编译生成的quazipd.dll、quazip.dll和zlib编译生成的zlib1.dll库复制粘贴进来;

Quazip解压缩文件

  新建include文件夹,将quazip和zlib的头文件加进来;

Quazip解压缩文件

  Qt Creator打开测试工程,在pro文件中添加库文件和头文件路径,这里要区分一下debug和release版本,代码如下:

INCLUDEPATH += $$PWD/include
CONFIG(debug, debug|release) {
    LIBS += -L$$PWD/lib -lquazipd
} else {
    LIBS += -L$$PWD/lib -lquazip
}
           

  对于上面代码CONFIG(debug,debug|release),它有两个参数,第一个参数表示判断debug是否为active,第二个参数表示为互斥选项的一个集合。

  引入解压缩的头文件:

#include <JlCompress.h>
           

  解压缩代码:

JlCompress::extractDir("D:/down/test.zip", "D:/down/test");   //解压
JlCompress::compressDir("D:/up/test.zip", "D:/down/test");    //压缩
           

  编译运行,解压缩成功!

Quazip解压缩文件

原文首发公众号:程序媛讲QT。扫码关注我吧~

Quazip解压缩文件

继续阅读