ZLIB quazip (只能对ZIP进行解压,不能对RAR等其它的压缩文件解压)
来源:互联网 发布:糜烂网络上是什么意思 编辑:程序博客网 时间:2024/05/17 15:18
ZLIB 主要是对ZIP 文件进行压缩与解压缩 但是有一个缺点:不能对文件夹循环解压压缩,quazip 主要是对 ZLIB 进行封装,解决它的这一个BUG
ZLIB主页:http://www.zlib.net/index.html
ZLIB使用范例 http://www.zlib.net/zlib_how.html
F:\zipljt\quazip-0.7.3\quazip\zlib.h:34: 错误:C1083: 无法打开包括文件:“zconf.h”: No such file or directory
上面2个错误参考:
ZLIB主页:http://www.zlib.net/index.html
ZLIB使用范例 http://www.zlib.net/zlib_how.html
quazip 官网 :http://quazip.sourceforge.net/
也尝试过自己先编译ZLIB再编译quazip,但的是一直不成功,后来就直接用了QT自带的zlib库来编译quazip
PRO文件如下:
F:\quazip-0.7.3\quazip.pro
#TEMPLATE=subdirs#SUBDIRS=quazip qztest#qztest.depends =TEMPLATE=subdirsSUBDIRS=quazip#DEFINES+=QUAZIP_STATIC#DEFINES+=_ZLIB_H#DEFINES+=ZLIB_WINAPIINCLUDEPATH += "C:\\Qt\\4.8.5\\src\\3rdparty\\zlib"INCLUDEPATH += $$PWD/DEPENDPATH += $$PWD/
后来遇到了问题:
F:\zipljt\quazip-0.7.3\quazip\quacrc32.cpp:27: 错误:C1083: 无法打开包括文件:“zlib.h”: No such file or directory,但是又可以进入此文件F:\zipljt\quazip-0.7.3\quazip\zlib.h:34: 错误:C1083: 无法打开包括文件:“zconf.h”: No such file or directory
上面2个错误参考:
http://www.tuicool.com/articles/nammyu
http://blog.csdn.net/xiexingshishu/article/details/44947985
http://blog.csdn.net/s569646547/article/details/51436380
解决办法:直接把 C:\Qt\4.8.5\src\3rdparty\zlib 下面的这些文件COPY到F:\zipljt\quazip-0.7.3\quazip\ 下面,编译 quazip 工程,解决问题。
使用程序:F:\zipljt\testCode\testCode.pro:
QT += core guigreaterThan(QT_MAJOR_VERSION, 4): QT += widgetsTARGET = testCodeTEMPLATE = appSOURCES += main.cpp\ mainwindow.cppHEADERS += mainwindow.hFORMS += mainwindow.uiwin32:CONFIG(release, debug|release): LIBS += -L$$PWD/../quazip-0.7.3/quazip/debug/ -lquazipelse:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/../quazip-0.7.3/quazip/debug/ -lquazipdINCLUDEPATH += $$PWD/../quazip-0.7.3/quazip/debugDEPENDPATH += $$PWD/../quazip-0.7.3/quazip/debugINCLUDEPATH += $$PWD/../quazip-0.7.3/quazip测试代码:
#include "JlCompress.h"//testzlibvoid MainWindow::on_testzlib_clicked(){ // 压缩文件夹 已经有,则会覆盖 JlCompress::compressDir("F:\\tx\\xx.zip", "F:\\tx\\dcomp"); // 解压缩文件夹 如果已经 "F:\\tx\\xdcomp" 已经有,则会覆盖 JlCompress::extractDir("F:\\tx\\xx.zip", "F:\\tx\\xdcomp");}
后来因为要调试代码,所以觉得用库不是很方便,就直接加的源代码,PRO如下:
#quazipDIR添加源码 bDEFINES += QUAZIP_STATICquazipDIR = $$quote($$PWD/quazip-0.7.3/quazip)INCLUDEPATH += $$quazipDIRDEPENDPATH += $$quazipDIRHEADERS += \ $$quazipDIR/crypt.h \ $$quazipDIR/ioapi.h \ $$quazipDIR/JlCompress.h \ $$quazipDIR/quaadler32.h \ $$quazipDIR/quachecksum32.h \ $$quazipDIR/quacrc32.h \ $$quazipDIR/quagzipfile.h \ $$quazipDIR/quaziodevice.h \ $$quazipDIR/quazipdir.h \ $$quazipDIR/quazipfile.h \ $$quazipDIR/quazipfileinfo.h \ $$quazipDIR/quazip_global.h \ $$quazipDIR/quazip.h \ $$quazipDIR/quazipnewinfo.h \ $$quazipDIR/unzip.h \ $$quazipDIR/zip.hSOURCES += $$quazipDIR/qioapi.cpp \ $$quazipDIR/JlCompress.cpp \ $$quazipDIR/quaadler32.cpp \ $$quazipDIR/quacrc32.cpp \ $$quazipDIR/quagzipfile.cpp \ $$quazipDIR/quaziodevice.cpp \ $$quazipDIR/quazip.cpp \ $$quazipDIR/quazipdir.cpp \ $$quazipDIR/quazipfile.cpp \ $$quazipDIR/quazipfileinfo.cpp \ $$quazipDIR/quazipnewinfo.cpp \ $$quazipDIR/unzip.c \ $$quazipDIR/zip.c#quazipDIR添加源码 e调试代码主要在 JlCompress类中
0 0
- ZLIB quazip (只能对ZIP进行解压,不能对RAR等其它的压缩文件解压)
- Linux实现对rar压缩文件的解压
- 使用apache的工具类进行zip(rar等压缩文件)的解压
- java解压zip或rar压缩文件(有源码和jar包以及对中文乱码的处理方法)
- java zip和rar压缩文件的解压
- 解压(.rar及.zip格式)压缩文件
- 解压zip跟rar压缩文件
- java对zip文件的解压处理直接访问压缩文件
- 使用QuaZip对文件进行压缩解压操作
- Qt使用QuaZip对文件进行压缩解压操作
- Qt使用QuaZip对文件进行压缩解压操作
- zip rar的解压
- Ubuntu下如何解压.zip和.rar格式的压缩文件
- java解压zip或者rar压缩文件
- 对zip压缩包进行解压
- java对zip进行压缩和解压
- rar命令行解压zip文件提示不是 rar 压缩文件,没有可提取的文件的解决办法
- Qt QuaZip 解压zip文件
- 通过LoCo加速器设置VPN代理上外国网站
- 软件测试
- char、varchar、binary和varbinary的区别与联系
- centos7搭建harbor镜像仓库
- 基于AT91SAM9260的集中抄表系统解决方案
- ZLIB quazip (只能对ZIP进行解压,不能对RAR等其它的压缩文件解压)
- Python笔记-计算密集型(最好用C)、IO密集型(最好用脚本)
- linux使用mysql 在输入了mysql 之后出现 the programe can be found in the following packages
- Fedora-安装mysql-server
- Linux-文件夹权限授予某个用户
- mysql-导入导出sql脚本文件
- Fedora-设置开机启动进入命令行
- Vim常用命令小结
- 第7章 单例模式