C++ 7z解压缩编译及使用

bit7z-master 下载编译

1、https://github.com/rikyoz/bit7z 下载bit7z-master,如下图
在这里插入图片描述
2、迅雷下载:https://www.7-zip.org/a/lzma1900.7z,下载lamz1900包
3、解压bit7z-master和lzma1900,将lzma1900中的文件复制到bit7z-master包下的7zSDK文件夹中,如下图
在这里插入图片描述
4、选择bit7z-master文件夹下的bit7z.vcxproj,用vs2019打开,项目升级的话,确认升级就行。
5、编译,根据自己需要编译对于的版本的lib库,我这边项目需要debug版本64位的库在这里插入图片描述
6、点击bit7z项目右键属性,配置属性-常规-目标文件名称,改为:bit7z64,注意编译版本,如下图
在这里插入图片描述
7、编译,将编译生成的lib库复制到个人本地工程,编译结果如下
在这里插入图片描述
8、在个人项目目录下新建lib文件夹,将编译成功后的bit7z64.lib放入,将bit7z-master下的include文件夹也复制到个人项目目录下
在这里插入图片描述
9,迅雷下载7z1900-extra,链接:https://www.7-zip.org/a/7z1900-extra.7z,解压后复制7za.dll,7zxa.dll到个人项目下
在这里插入图片描述
10,配置项目include,lib,特别需要注意配置的版本。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
11,添加压缩,解压相关代码,https://github.com/rikyoz/bit7z,有相关demo,下面附上解压部分代码

try {
        Bit7zLibrary lib{ L"7za.dll" };
        BitExtractor extractor{ lib, BitFormat::SevenZip };
        //extracting an encrypted archive
        //extractor.setPassword(L"password");
        extractor.extract(L"xxx.zip", L"C:\\Users\\Output"); //extracting a simple archive    }
    }
    catch (const BitException& ex) {
        //do something with ex.what()...
        cout << ex.what() << endl;
    }

12,详细见博客:https://blog.csdn.net/qq_44623607/article/details/117752945?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_title~default-0.control&spm=1001.2101.3001.4242

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
### 回答1: 7zip是一款开源的压缩工具,可以实现高压缩比和快速解压的功能。在开始使用之前,我们首先需要对其进行编译。 首先,我们需要下载7zip的源代码,可以在7zip官方网站上找到最新的版本。然后,我们需要安装一个支持CMake的编译环境,例如Visual Studio或MinGW。 接下来,我们将源代码解压缩到一个目录中,并打开命令行界面进入该目录。使用CMake命令生成编译所需的Makefile文件,例如在命令行中输入:cmake . ,然后按下回车键。 生成Makefile文件后,我们可以使用Make命令进行编译。在命令行中输入make,然后按下回车键,编译过程将开始。 编译完成后,我们可以在目录中找到生成的可执行文件,例如7za.exe。现在,我们可以使用该可执行文件来进行文件的压缩和解压缩使用7zip的命令行界面非常简单,并且具有丰富的功能。例如,我们可以使用"7za a"命令来创建一个压缩包,以及使用"7za x"命令来解压缩一个压缩包。 除了命令行界面,7zip还提供了一个图形界面的用户界面,可以更加方便地进行操作。 总之,7zip是一款功能强大的开源压缩工具,通过编译使用它,我们可以实现高效的文件压缩和解压缩操作。 ### 回答2: 7-Zip是一个开源的压缩工具,可以通过编译源代码来使用。 首先,需要下载7-Zip软件的源代码。可以从官方网站或者GitHub上获取到最新的源代码压缩包。 解压缩源代码压缩包后,进入解压缩后的文件夹。在命令行中切换到该目录。 在命令行中输入"nmake"命令来编译代码。编译过程可能需要一些时间,取决于你的计算机性能。 如果编译成功,将会生成可执行文件。使用命令行来调用7-Zip,你可以输入"7z"命令来查看可用的命令选项和参数。 在使用7-Zip进行压缩和解压缩时,可以使用以下命令格式: 7z <命令> <压缩文件名> <目标文件名> 例如,要将文件夹"test"压缩为一个文件"test.7z",可以使用以下命令: 7z a test.7z test 要解压缩文件"test.7z"到当前目录,可以使用以下命令: 7z x test.7z 7-Zip支持多种格式的压缩和解压缩,例如7z、zip、rar等。需要注意的是,根据你的编译选项和操作系统的不同,可能会支持不同的格式。 此外,在编译时,你也可以根据需要进行一些自定义设置和配置,例如修改默认的压缩算法、文件类型过滤等。 总的来说,编译使用7-Zip需要一些基本的命令行操作和对C或C++编译原理有一定的了解。当你掌握了这些基础知识后,你就可以自由地使用7-Zip来进行压缩和解压缩操作了。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值