分享

qt5.4.0使用quazip解压缩zip文件

 昵称52164085 2018-06-07

很简单的问题,因为不了解,愣是弄了好长时间,献给新手们,ps:第一次发博微笑

本人只测试了在qtcreate上的实现,在vs中没有尝试,流程应该是一样的,请大家自己发挥


跟着我一步步来:

1.souceforge下载地址:http:///projects/quazip/  下载最新的quazip,我这次下载的是quazip-0.7.2


直接编译会报错,要做下面的修改:

2.打开刚刚下载的quazip.pro,把其中的

SUBDIRS=quazip qztest 改为
SUBDIRS=quazip


3.将qt安装目录下的两个头文件拷贝出来(zlib.h和zconf.h),不同版本路径可能有出入,可以搜索入下图



4.,将两个头文件拷贝到quazip项目路径中,路径:\quazip-0.7.2\quazip\,然后添加到项目程序中,编译--成功。

做了以上简单操作后,程序就不会报错了,会生成libquazip.a,quazip.dll。


5.新建一个自己的测试程序。

将quazip中用到的头文件拷贝到测试程序中,新建一个zip文件夹存放





6.在my_zip_test.pro中添加以下代码

INCLUDEPATH +=./zip
CONFIG(debug, debug|release) {
    win32:win32-g++: PRE_TARGETDEPS += $$PWD/zip/libquazipd.a
    win32:win32-g++: LIBS += -L$$PWD/zip/ -l quazipd
} else {
    win32:win32-g++: PRE_TARGETDEPS += $$PWD/zip/libquazip.a
    win32:win32-g++: LIBS += -L$$PWD/zip/ -l quazip
}

7.使用示例:

#include <QCoreApplication>
#include "JlCompress.h"

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    JlCompress::compressDir("d:\\test.zip", "d:\\test"); //压缩
    JlCompress::extractDir("d:\\test.zip", "d:\\test");//解压缩
    return a.exec();
}
此时程序可以编译成功但是会报:异常退出

8.解决办法:

把quazip项目生成的quazip.dll和quazipd.dll分别放在release 和debug版本my_zip_test.exe的相同目录下,再编译运行就OK了。


如果有想直接使用已经编译好的dll和.a请前往链接去下载,还有一个简单的小例子:

http://download.csdn.net/detail/jing332/9557338

有不明白的请留言!



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多