Qt使用7z压缩和解压示例(支持文件夹递归、多文件不同位置)

  • Post author:
  • Post category:其他


1,简介

Qt自带的压缩处理类功能不太完善,也不支持中文路径。

这是我封装好的一个Qt调用7z处理压缩解压的工具类 ZipAPI,提供了几个简单易用的接口。

写压缩解压代码从此非常方便快捷!

支持中文路径,支持常规的压缩解压功能:

如压缩一个文件夹(嵌套包含子文件夹)、压缩一堆文件(可在不同位置)、解压文件

注意:要将release文件夹中的 7z.exe 和 7z.dll 放到你的exe目录下!

2,ZipAPI 工具类接口

class ZipAPI
{
public:
	ZipAPI();

    //压缩一个文件夹
    static bool ZipDir(QString strDir, QString strZipfile);

    //压缩一群文件
    static bool ZipFiles(QStringList files, QString strZipfile);

    //解压
    static bool UnZip(const QString& strZipfile, const QString &strOutDir);

}

3,效果演示

制作了一个界面友好的示例demo,调用代码简洁直观。


压缩文件夹



压缩、解压多个文件:

4,演示程序、源码下载

链接:

https://pan.baidu.com/s/1Orm3gs_X45iUhEp1Ldnozw?pwd=jmy8


提取码:jmy8



版权声明:本文为dpsying原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。