精华内容
下载资源
问答
  • 2021-04-28 18:03:58

    本文是windows系统,MinGW64位环境,MSVC编译环境下在quazipd和libz库的编译过程有所不同。
    本文用的下载文件和工程文件做了个压缩包:
    https://download.csdn.net/download/weixin_40355471/18231263

    编译libz.a库

    第一步,搭建MSYS环境
    下载地址:https://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/
    解压缩在C盘,这里是模拟linux系统环境,解压缩后运行 msys.bat 就可以加载msys,并且把qt的mgw安装目录加入到系统环境变量:C:\Qt\Qt5.12.2\Tools\mingw730_64\bin
    第二步,下载zlib-1.2.11.zip,下载地址:http://www.zlib.net/
    第三步,把zlib-1.2.11.zip解压缩到刚安装的msys里面用户的家目录:C:\msys\home\user
    第四步,编译zlib库
    运行msys.bat,在命令行执行依次下面指令

    cp win32/makefile.gcc makefile.gcc	#cd到zlib-1.2.11目录下执行
    make -f makefile.gcc
    make install -f Makefile.gcc INCLUDE_PATH=/mingw/include/ LIBRARY_PATH=/mingw/lib/ BINARY_PATH=/mingw/bin/	#生成的库放在C:\msys\mingw目录下
    

    至此,生成了include文件夹里面是头文件,lib文件夹里面是libz.a。

    编译quazipd.dll

    根据生成的libz.a,编译quazipd.dll库
    下载quazip:https://github.com/stachenov/quazip
    这里下载的是源码文件,没有QT工程pro文件,需要自己配置,本文开头的下载链接内有配置好的工程,可以直接编译。
    把生成的libz.a里面include和lib文件夹拷贝到quazip文件夹下,pro文件引用libz头文件和库文件,这里注意引用.a库文件时把lib和后面的.a去掉,只保留库名称,即:z

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

    编译成功后即可生成quazipd.dll库文件。
    补充一点,debug模式下生成的dll库自动加后缀d,这样release模式下生成的库名称是quazip.dll,debug模式下生成的库名称是quazipd.dll。

    CONFIG(debug, debug|release) {
         mac: TARGET = $$join(TARGET,,,_debug) 
         win32: TARGET = $$join(TARGET,,,d)
    }
    

    压缩和解压缩zip

    把quazipd里面的头文件全部拷贝到include文件夹下,把include文件夹和lib文件夹拷贝到测试工程目录,测试工程pro文件添加:

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

    另外需要把quazipd.dll拷贝到构建目录,即可执行文件exe所在目录,否则运行时会崩溃。

    quazipd支持的压缩和解压缩方式很多,这里只介绍两种:
    第一种,直接压缩和解压缩JlCompress

        JlCompress::compressDir("D:/test/quazip-master.zip", "D:/test/quazip-master");//参数1:压缩后的文件,参数2:待压缩的目录,参数3:是否递归
        JlCompress::extractDir("D:/test/3.zip", "D:/test/");//参数1待解压缩的文件,参数2解压缩存放的目录
    

    第二种,QuaZipFile解压缩,支持解压加密zip文件

    void MainWindow::UnZipFile()
    {
        QuaZipFile file4("D:/test/3.zip");//zip文件目录
        file4.open(QIODevice::ReadOnly,"123456");//第二个参数是zip密码
    
        QFile file2("D:/test/3.mp4");//解压后的文件名
        if (!file2.open(QIODevice::WriteOnly ))
            return;
    
        char fileData[2048]={0};
    
        int size=file4.csize()-2048;
        while(!file4.atEnd())
        {
            if(file4.getZipError() != 0)//getZipError返回非0值,表示文件错误,密码错误时返回-3
            {
                file2.remove();
                break;
            }
            file4.read(fileData,2048);
            file2.write(fileData,2048);
            size=size-2048;
        }
        file2.close();
        file4.close();
    }
    
    更多相关内容
  • Qt zip demo.rar

    2019-11-28 16:18:18
    qt解压与压缩,包含Quazip源码、zlib源码1.2.11源码,及编译后工程、测试工程(x86/x64)
  • qt zip 压缩库

    2018-12-27 17:23:14
    qt封装zip源码生成quazip压缩库源代码,使用平台msvc版本qt,至于mingw版本的qt没有测试过不知道可不可行,纯源码 没有依赖任何其他dll
  • Gilles Vollant的ZIP / UNZIP C包(minizip)的Qt / C ++包装器。 使用QIODevice API,可以从Qt程序访问ZIP存档。
  • 包含Tiny6410在Ubuntu下安装Qt所需的全部安装包 包括 (1)arm-linux-gcc-4.5.1-v6-vfp-20101103.tgz(交叉编译环境) (2)qt-everywhere-opensource-src-4.8.5.tar.gz(Qt 的源码) (3)qt-creator-linux-x86_64-...
  • 由于linux下QT捕获异常所需安装包大部分需要从google或者github下载,如果不翻墙下载速度十分慢,在此将breakpad、qbreakpad等安装包提供给大家,catchException为测试例程
  • QtDemo.zip

    2020-09-15 21:24:58
    在CLion可以把Qt跑起来的cmake配置 https://blog.csdn.net/qq_32768743/article/details/80056316
  • Qt 压缩 zip/unzip

    热门讨论 2012-10-29 19:40:30
    Qt开发的文件及文件夹得压缩以及解压功能,zip,unzip
  • quazip下载不了,或者zip.lib无法下载,这里可以完美解决你的问题,此工程包含quazip、zip.c与unzip.c源码,此源码可以编译成lib库,也可以直接使用,基于quazip,新增了压缩与解压进度显示,Qt5.6.3+MSVC2013的demo...
  • 该案例通过zlib实现gzip的压缩解压功能,包括解压gzip字符串、图片两个案例;...相应说明参考笔者博客:Qt笔记8--zlib实现gzip解压,链接https://blog.csdn.net/u011127242/article/details/10059490
  • QtCharts_dev_for_Qt4.8.6.zip

    2021-06-26 17:19:35
    Qt4.8.6下的QtCharts库
  • QT4.8.5.zip

    2019-06-18 23:37:31
    QT4.8.5安装包,软件如下MinGW-gcc440_1,qtcreator-gdb-7.4-MINGW32_NT-6.1-i686.tar,qt-creator-windows-opensource-2.8.0,qt-win-opensource-4.8.5-mingw
  • 通过Qt5使用LZMA SDK完成C++的7z格式文件压缩和解压缩(源码和可执行文件均包含在内),实现了百分比进度条显示功能。
  • QT中实现zip文件的压缩和解压

    千次阅读 2021-01-01 21:14:07
    QT中实现zip文件的压缩和解压 目录 QT中实现zip文件的压缩和解压 一、第三方库加载 1、需要的库和头文件 2、将第三方库拷贝到例程路径下 3、在.pro文件中配置 二、示例程序 1、代码编写 2、编译运行...

    QT中实现zip文件的压缩和解压

    目录

    QT中实现zip文件的压缩和解压

    一、第三方库加载

           1、需要的库和头文件

           2、将第三方库拷贝到例程路径下

           3、在.pro文件中配置

    二、示例程序

          1、代码编写

          2、编译运行结果

          3、所压缩的文件支持7-Zip解压

    一、第三方库加载

           1、需要的库和头文件

                 

           2、将第三方库拷贝到例程路径下

           3、在.pro文件中配置

    win32: LIBS += -L$$PWD/zip/lib/ -lquazip
    win32: LIBS += -L$$PWD/zip/lib/ -lzdll
    INCLUDEPATH += $$PWD/zip/include
    DEPENDPATH += $$PWD/zip/include
    

    二、示例程序

          1、代码编写

          2、编译运行结果

         

     


    展开全文
  • QT控件-手动遥控按钮文件
  • Qt压缩和解压 zip

    万次阅读 热门讨论 2018-10-11 17:39:26
    下载quazip https://github.com/stachenov/quazip 也可直接下载我配置好的quazip https://github.com/zwx230741/quazip.git 加入头文件 ...在quazip中创建include文件夹 ...用Qt打开工程,修改quazip....

    zlib编译详见
    https://blog.csdn.net/zhangxuechao_/article/details/85049711

    下载quazip
    https://github.com/stachenov/quazip

    也可直接下载我配置好的quazip
    https://github.com/zwx230741/quazip.git

    加入头文件
    在quazip中创建include文件夹
    1
    将zlib头文件拷贝到include文件夹下
    2
    加入动态库文件
    在quazip中创建lib文件夹
    1
    将zlib编译好的动态库拷贝到lib文件夹下
    2
    quazip工程配置
    修改quazip.pro工程文件。添加头文件路径和动态库路径

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

    3
    编译动态库
    3
    不加入头文件,报以下错误
    4


    创建测试工程quazipTest
    同理,创建include和lib目录。分别放头文件和动态库文件
    5
    拷贝头文件
    从quazip拷贝所有头文件
    2
    拷贝库文件
    拷贝刚刚生成的动态库文件。quazipd.dll是Debug生成的,quazipd.dll是Release生成的,zlib1.dll是zlib动态库
    3
    quazipTest工程配置
    修改quazipTest.pro工程文件。添加头文件路径和动态库路径

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

    添加压缩解压代码

    #include "mainwindow.h"
    #include <QApplication>
    #include <JlCompress.h>
    
    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
        MainWindow w;
        w.show();
    
        JlCompress::compressDir("D:/testzip/a.zip", "D:/testzipdir1");
        JlCompress::extractDir("D:/testzip/a.zip", "D:/testzipdir2");
        
        return a.exec();
    }
    

    我测试好的工程:https://github.com/zwx230741/quazipTest.git

    展开全文
  • Qt + vue.zip

    2020-09-12 14:20:41
    本文资源是利用Qt5+vue实现一个windows桌面应用程序,采用QWebEngineView加载html页面,QWebChannel和QThred实现和html页面异步交互
  • 但是Qt下做这个不容易。 1、网上都是说用Quazip这个库,但这个库需要自己编译的; 2、Quazip有依赖其他的压缩库,这下更麻烦了。 自己弄了很久,参考了很多人的方法,最后还是跑了起来。 其实最后就是2个dll放到程序...

    最近做了一个 海盗王自动更新工具,需要用到解压标准压缩包的功能。
    原意是先从网络上下载一个压缩包到程序目录,然后展开压缩包,覆盖文件夹和文件即可。

    在这里插入图片描述

    但是Qt下做这个不容易。
    1、网上都是说用Quazip这个库,但这个库需要自己编译的;
    2、Quazip有依赖其他的压缩库,这下更麻烦了。

    自己弄了很久,参考了很多人的方法,最后还是跑了起来。

    其实最后就是2个dll放到程序目录下就行了:

    在这里插入图片描述
    1、在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
    }
    

    2、zip文件夹里包含一堆头文件和库文件:
    在这里插入图片描述

    3、使用的时候,直接调用静态方法即可:

    QString fpath = QApplication::applicationDirPath() + “/” + GlobalData::upver + “.zip”;
    JlCompress::extractDir(fpath, QApplication::applicationDirPath() + “/”);

    展开后会自动覆盖文件,不会有提示。可以展开文件夹和文件。

    展开全文
  • Qt调用Snap7.zip

    2021-08-27 18:53:22
    Qt5调用Snap7与西门子PLC通信, 读取DB块
  • Qt安卓蓝牙Blue.zip

    2020-12-29 13:50:42
    基于Qt实现的安卓手机链接蓝牙模块(HC05),属于一个简单的demo,可以在上面进行自己一些扩展
  • Qt压缩和解压 zip--Qt

    千次阅读 热门讨论 2019-05-16 17:16:35
    QuaZip是用C++、Qt对Zlib进行封装,用于压缩和解压文件的库。 转自:https://blog.csdn.net/zhangxuechao_/article/details/83014473 zlib编译详见https://blog.csdn.net/zhangxuechao_/article/details/85049711 ...
  • Q7Zip:使用LZMA SDK压缩和提取7z格式文件的Qt示例
  • 利用qt实现解压缩zip文件

    千次阅读 2020-04-25 17:02:01
    作者开发环境:Qt5.8 ,win10 总体思路:首先我们编译zip源码,生成zip的动态库;然后再编译quazip源码,得到quazip的动态库;最后在我们的程序中去调用。 详细步骤: 1、编译zlib zlib源码下载:...
  • qtSerial.zip

    2019-10-14 20:38:43
    一个用QT制作的简易串口调试助手,可以供大家参考一下
  • osg_qt4.zip

    2021-06-27 18:33:06
    以上就是今天要讲的内容,本文介绍了qt4.8.6嵌入osgQt的实现. 如果喜欢本文请帮忙点赞、评论、关注三连哦~ 原文链接 https://binglee.blog.csdn.net/article/details/118277910
  • QT二维码Windows.zip

    2020-04-29 10:51:17
    在windows系统下用qt展示二维码。里面readme.txt介绍使用。 QString strSetQRC = "http://www.baidu.com"; widget->setQRData(strSetQRC, QRWidget::H_ERROR_LEVEL); //widget 为 QRWidget指针
  • QT迷宫.zip

    2019-10-13 12:16:55
    最近,我陆续地把以前做的一些Qt或OpenGL的小程序、游戏等整理出来。其中的这个迷宫游戏,是我在大二时期为《数据结构综合实习》所做的程序。  当时倒是觉得写完这个程序对我的Qt技巧的提升还挺大的。虽然现在时隔...
  • qtjambi是Java版的qt, 适合java的GUI开发 这是4.5.2版的, 支持qt4.5, 配合eclipse插件可以使用qt designer!! 用法: 1. 将 qtjambi-eclipse 的plugin目录下的jar包拷贝到eclipse的plugin目录下 2. 将 qtjambi-...
  • qt 7zip压缩解压含进度

    2022-07-01 13:54:33
    内容概要:qt5 调用 7zip库的压缩解压功能,且通过信号发出压缩解压的进度,主程序在bin目录中。 适用人群:qt5开发人员 适用场景:用的编译环境是qt5.12.2+vs2017,系统是windows10. lib目录中OleAut32.Lib和User32....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 26,296
精华内容 10,518
关键字:

Qt Zip