利用7z程序压缩、解压
7z程序
准备
下载7-zip
官方网址:https://sparanoid.com/lab/7z/
知识储备
a - 压缩;x ,e- 解压
e命令解压的时候不会保持目录结构,会把所有的文件都解压到目的目录下,不管这些文件是不是位于子文件夹。
x命令则会保存目录结构
转义字符需要加入,例如\ "
编程
命令行
- 参数说明
- nCompressType:0 压缩;1 解压
- exePath:7z.exe路径
- srcPath:当nCompressType为0的时候,文件夹路径;当nCompressType为1的时候,压缩包路径
- destPath:当nCompressType为0的时候,压缩包路径;当nCompressType为1的时候,文件夹路径
压缩例子:
//命令行中存在空格的处理 ,加入""std::string strExePath = "D:\\7-Zip\\7z.exe";std::string srcPath = "D:\\xx xx(xx)";std::string destPath = "D:\\xx xx(xx)";bool bRes = zipCompress(strExePath, "\"" + srcPath + "\"\\" + "\*", "\"" + destPath + "\".zip", 0);
bool zipCompress(std::string exePath, std::string srcPath, std::string destPath, int nCompressType) {char cmd[1000] = { 0 };if (nCompressType == 0){snprintf(cmd, sizeof(cmd), "%s a %s %s", exePath.c_str(), destPath.c_str(), srcPath.c_str());}else if (nCompressType == 1){snprintf(cmd, sizeof(cmd), "%s x %s -o%s", exePath.c_str(), srcPath.c_str(), destPath.c_str());}logger_write(Logger::Logger_Level_DEBUG,"the cmd is %s",cmd);system(cmd);return true; }
特殊路径处理
带有空格的路径
带有空格的通配符或文件名必须加上引号: "Dir\Program files\*" Dir\"Program files"\*
利用7z程序压缩、解压相关推荐
- C#中使用7Z进行压缩解压
C#中使用7Z进行压缩解压 SevenZipSharp相关文档下载地址: http://sevenzipsharp.codeplex.com/releases/view/51254 1. 解决方案中添 ...
- 通过程序压缩/解压文件
通过引用一DLL(ICSharpCode.dll)可以实现所述功能... 一.压缩文件 using System; using ICSharpCode.SharpZipLib; using ICSha ...
- Linux 命令之 7z(7-zip) -- 压缩/解压文件
文章目录 一.命令介绍 (一)主要特征 1.使用 LZMA 算法 2.支持多种格式 (二)退出代码的含义 (三)关于通配符 (四)关于覆盖文件的提示回应 二.命令格式 三.常用子命令 四.常用选项 五 ...
- java 7zip解压_Apache Commons Compress介绍-JAVA压缩解压7z文件
7zip(下面简称7z)是由Igor Pavlov所开发的一种压缩格式,主要使用的压缩算法是LZMA/LZMA2.7z是一种压缩比非常高的格式,这与其压缩算法LZMA有直接关系,所以很多大文件都是用7 ...
- mac 命令行 解压7z文件_命令行压缩解压7z
命令行压缩解压一 7z 1) 简介7z,全称7-Zip, 是一款开源软件.是目前公认的压缩比例最大的压缩解压软件.主页:http://www.7-zip.org/中文主页:http://7z.spar ...
- 7z 命令行压缩解压详解-中文版
1) 简介 7z,全称7-Zip, 是一款开源软件.是目前公认的压缩比例最大的压缩解压软件. 主页:http://www.7-zip.org/ 中文主页:http://7z.sparanoid.com ...
- Linux 命令之 tar 命令-打包和备份的归档工具(附压缩/解压工具)
文章目录 一.命令介绍 二.命令语法 三.常用选项 四.命令示例 (一)对指定的目录进行打包(即备份归档),不压缩 (二)对指定目录下的内容(不含目录本身)进行打包(即备份归档),不压缩 (三)通过通 ...
- Linux按压缩率大小排序,Linux下常用压缩 解压命令与压缩比率对比
常用的格式有: tar, tar.gz(tgz), tar.bz2, 不同方式,压缩和解压方式所耗CPU时间和压缩比率也差异也比较大. 1. tar 只是打包动作,相当于归档处理,不做压缩:解压也一样 ...
- linux右键无法解压gz文件夹,Linux/centos下zip、tar、gz压缩解压命令
Linux下的压缩解压缩命令详解及实例 实例:压缩服务器上当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip == ...
最新文章
- SVN 报错“Previous operation has not finished; run ‘cleanup‘ if it was interrupted”
- 微信小程序引入Vant组件库
- 斯坦福大学的机器学习跟深度学习。
- keepalived主从模式监测nginx
- 计算机的硬盘和光盘数,磁盘与光盘介绍-计算机组成原理与汇编语言-电子发烧友网站...
- Node.js 开发者 2020 年度报告
- leetcode 222. 完全二叉树的节点个数(dfs)
- leetcode344. 反转字符串 史上最简单力扣题
- 【华为云技术分享】#探索鲲鹏#之“在鲲鹏上使用编程语言——C语言
- Coinbase在今日比特币下跌时出现宕机
- 万能工具,完全免费实现各种超实用功能
- Android 集成google地图 准备工作
- 国内域名转入到AWS-Route53的操作实践经验分享
- FlinkX配置文件解析
- 27 周刊 | 这周我看到的?
- Tomcat 在本地创建虚拟目录myapp
- 3dmax应用领域_3D打印的应用领域是什么?
- C/C++ Qt StatusBar 底部状态栏应用
- python中true用法_使用True/False作为键-如何/为什么这样做?
- Word文件交换的电脑打开字体、排版变化的原因和解决方法!