qt5.9 + msvc2015+ quazip安装使用

1. 为什么要使用quzip?

qt5.9 自带简单的zip解压缩,但是只能压缩和解压一个文件,不能对文件夹操作,所以引入zip库进来。 QuaZip是用C++、Qt对Zlib进行封装,用于压缩和解压文件或者文件夹。

2. 怎么安装配置?

我尝试了半天终于形成一套流程,参考了一些博客。中途竟然出现只能压缩,不能解压,一解压就程序崩溃,最后终于可以使用了。
安装分为以下步骤。
  1. 下载编译zip,取出可用的库和头文件
  2. 下载quazip,在quazip中引入zip的库和头文件,然后编译动态库, 取出可用的库和头文件
  3. 在自己的工程中配置使用quazip库和头文件

2.1 下载编译zip ,取出可用的库和头文件

zip下载路径:

编译: a. 打开vs2015 32位命令行工具 b. 切换到zlib源代码目录 c. 执行编译命令:nmake -f win32/makefile.msc ,默认生成的是release版本的。 如果需要debug版本的,修改win32/Makefile.msc中的

CFLAGS  = -nologo -MD -W3 -O2 -Oy- -Zi -Fd"zlib" $(LOC)
 修改为
 CFLAGS  = -nologo -MDd -W3 -Od -Oy- -Zi -Fd"zlib" $(LOC)

以下我使用的是debug版本的。 编译成功后: 新建一个目录放入,取出要用的库和头文件,留着使用

2.2 下载quazip,在quazip中引入zip的库和头文件,然后编译动态库, 取出可用的库和头文件

quazip下载链接:

  1. 在qt中打开此项目
  2. 打开配置文件,去掉测试版
  3. 在quazip中添加库

若是右键项目无法添加库,请参考: 结果为 构建中: 先qmake, 然后构建项目 现在已经编译出来了。 再取出头文件:

新建两个目录: 取出的库放在lib里面: 从zip和quazip中取出的头文件如下: 以上就是要使用的库和头文件。

2.3 在自己的工程中配置使用quazip库和头文件

新建一个测试工程; 用同样的方式在项目中添加库和头文件; 效果如下: 测试使用:

#include "mainwindow.h"
#include <QApplication>
#include "JlCompress.h"
#include <QDebug>
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.show();
    JlCompress::compressDir("d:\test.zip", "d:\test"); //压缩
    qDebug() <<"compressDir yes";
    JlCompress::extractDir("d:\test.zip", "d:\testOut");//解压缩
    qDebug() <<"extractDir yes";
    return a.exec();
}

3 参考博客

经验分享 程序员 微信小程序 职场和发展