Qt 之 ZIP开源库 QuaZIP
来源:互联网 发布:主板编程器使用方法 编辑:程序博客网 时间:2024/05/17 03:23
一。简介
QuaZIP是使用Qt,C++对ZLIB进行简单封装的用于压缩ZIP以及解压缩ZIP的开源库。
如果你的Qt项目当中用到了压缩以及解压缩ZIP的话你可以考虑选择使用它。
地址:官方主页
二。编译
QuaZIP目前支持以下几个平台:
- linux-g++ (Ubuntu 11.10, Qt 4.7.4)
- freebsd-g++ (Qt 4.0.0
- hpux-acc (HP-UX 11.11)
- hpux-g++ (HP-UX 11.11)
- win32-g++ (MinGW)
- win32-msvc2010 (MS VS 2010 Express, Qt 4.8.4)
- win32-msvc2010 (Qt Creator, Qt 5.0.1)
- some Symbian version, reportedly
QuaZIP是基于ZLIB库的,所以编译之前必须编译完ZLIB或者导入ZLIB的LIB和头文件。
默认QuaZIP是编译为DLL或者SO文件的。如果你想直接使用源代码的话你可以把所有导出类的标识符QUAZIP_EXPORT注释了,就可以编译通过
而不会生成DLL或者SO文件。
下面你就可以按照你所使用的平台和方式编译QuaZIP。三。使用
QuaZIP共有以下几个类
JlCompress典型操作工具类QuaAdler32Adler32 算法校验和QuaChecksum32校验和接口QuaCrc32CRC32 校验和QuaGzipFileGZIP 文件操作QuaZIODevice 压缩/解压 QIODeviceQuaZipZIP 文件QuaZipDirZIP文件内目录导航QuaZipFileZIP文件内的文件QuaZipFileInfoZIP压缩包内的文件信息QuaZipFilePrivateQuaZip的接口QuaZipNewInfo被创建的文件信息QuaZipPrivateQuaZIP内部类
下面给出一个自己用的解压缩ZIP的例子
下面给出一个自己用的解压缩ZIP的例子
- bool Ziper::Extract(const QString& in_file_path, const QString& out_file_path)
- {
- QuaZip archive(in_file_path);
- if (!archive.open(QuaZip::mdUnzip))
- return false;
- QString path = out_file_path;
- if (!path.endsWith("/") && !out_file_path.endsWith("\\"))
- path += "/";
- QDir dir(out_file_path);
- if (!dir.exists())
- dir.mkpath(out_file_path);
- for( bool f = archive.goToFirstFile(); f; f = archive.goToNextFile() )
- {
- QString filePath = archive.getCurrentFileName();
- QuaZipFile zFile(archive.getZipName(), filePath);
- zFile.open(QIODevice::ReadOnly );
- QByteArray ba = zFile.readAll();
- zFile.close();
- if (filePath.endsWith("/"))
- {
- dir.mkpath(filePath);
- }
- else
- {
- QFile dstFile(path + filePath);
- if (!dstFile.open(QIODevice::WriteOnly))
- return false;
- dstFile.write(ba);
- dstFile.close();
- }
- }
- return true;
- }
0 0
- Qt 之 ZIP开源库 QuaZIP
- Qt 之 ZIP开源库 QuaZIP
- Qt 之 ZIP开源库 QuaZIP
- Qt之QuaZIP(zip压缩/解压缩)
- Qt之QuaZIP(zip压缩/解压缩)
- Qt QuaZip 解压zip文件
- Qt 使用QuaZip库生成MD5加密Zip格式压缩文件
- 【大话QT之二】QuaZip实现多文件打包
- Qt实现zip压缩和解压,编译、调用zlib和QuaZip动态库过程详解
- qt5.4.0使用quazip解压缩zip文件
- quazip
- Qt中用QuaZip来压缩和解压缩文件
- QT解压缩zlib和quazip的使用
- Qt调用quazip来解压和压缩文件
- Qt中用QuaZip来压缩和解压缩文件
- Qt使用QuaZip对文件进行压缩解压操作
- Qt使用Quazip直接读取压缩包内文件
- QT 下怎么对资源进行压缩解压缩?quazip+zlib
- 程序员的等级划分
- 关于SparkMLlib的基础数据结构Spark-MLlib-Basics
- 测井软件
- UVA - 10118 Free Candies
- tr命令详解
- Qt 之 ZIP开源库 QuaZIP
- SPT.Group.Drillbench.v6.2 钻井及完井工程设计模拟软件
- 第16-19课作业第一题
- JVM GC垃圾回收机制笔记
- java反射机制理解
- AVL Suite 2014.0 (Workspace Suite 2014.0 + FIRE 2014.0) Win32_64 & Linux 5DVD
- Spark(1.2.0) Streaming 集成 Kafka 总结
- lliinnuuxx
- Linux内存管理