7z程序

准备

  1. 下载7-zip

    官方网址:https://sparanoid.com/lab/7z/

  2. 知识储备

    a - 压缩;x ,e- 解压

    • e命令解压的时候不会保持目录结构,会把所有的文件都解压到目的目录下,不管这些文件是不是位于子文件夹。

    • x命令则会保存目录结构

    转义字符需要加入,例如\ "

编程

  1. 命令行

    • 参数说明
    • 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;
    }
    

特殊路径处理

  1. 带有空格的路径

    带有空格的通配符或文件名必须加上引号:
    "Dir\Program files\*" Dir\"Program files"\*
    

利用7z程序压缩、解压相关推荐

  1. C#中使用7Z进行压缩解压

    C#中使用7Z进行压缩解压 SevenZipSharp相关文档下载地址: http://sevenzipsharp.codeplex.com/releases/view/51254 1. 解决方案中添 ...

  2. 通过程序压缩/解压文件

    通过引用一DLL(ICSharpCode.dll)可以实现所述功能... 一.压缩文件 using System; using ICSharpCode.SharpZipLib; using ICSha ...

  3. Linux 命令之 7z(7-zip) -- 压缩/解压文件

    文章目录 一.命令介绍 (一)主要特征 1.使用 LZMA 算法 2.支持多种格式 (二)退出代码的含义 (三)关于通配符 (四)关于覆盖文件的提示回应 二.命令格式 三.常用子命令 四.常用选项 五 ...

  4. java 7zip解压_Apache Commons Compress介绍-JAVA压缩解压7z文件

    7zip(下面简称7z)是由Igor Pavlov所开发的一种压缩格式,主要使用的压缩算法是LZMA/LZMA2.7z是一种压缩比非常高的格式,这与其压缩算法LZMA有直接关系,所以很多大文件都是用7 ...

  5. mac 命令行 解压7z文件_命令行压缩解压7z

    命令行压缩解压一 7z 1) 简介7z,全称7-Zip, 是一款开源软件.是目前公认的压缩比例最大的压缩解压软件.主页:http://www.7-zip.org/中文主页:http://7z.spar ...

  6. 7z 命令行压缩解压详解-中文版

    1) 简介 7z,全称7-Zip, 是一款开源软件.是目前公认的压缩比例最大的压缩解压软件. 主页:http://www.7-zip.org/ 中文主页:http://7z.sparanoid.com ...

  7. Linux 命令之 tar 命令-打包和备份的归档工具(附压缩/解压工具)

    文章目录 一.命令介绍 二.命令语法 三.常用选项 四.命令示例 (一)对指定的目录进行打包(即备份归档),不压缩 (二)对指定目录下的内容(不含目录本身)进行打包(即备份归档),不压缩 (三)通过通 ...

  8. Linux按压缩率大小排序,Linux下常用压缩 解压命令与压缩比率对比

    常用的格式有: tar, tar.gz(tgz), tar.bz2, 不同方式,压缩和解压方式所耗CPU时间和压缩比率也差异也比较大. 1. tar 只是打包动作,相当于归档处理,不做压缩:解压也一样 ...

  9. linux右键无法解压gz文件夹,Linux/centos下zip、tar、gz压缩解压命令

    Linux下的压缩解压缩命令详解及实例 实例:压缩服务器上当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip == ...

最新文章

  1. SVN 报错“Previous operation has not finished; run ‘cleanup‘ if it was interrupted”
  2. 微信小程序引入Vant组件库
  3. 斯坦福大学的机器学习跟深度学习。
  4. keepalived主从模式监测nginx
  5. 计算机的硬盘和光盘数,磁盘与光盘介绍-计算机组成原理与汇编语言-电子发烧友网站...
  6. Node.js 开发者 2020 年度报告
  7. leetcode 222. 完全二叉树的节点个数(dfs)
  8. leetcode344. 反转字符串 史上最简单力扣题
  9. 【华为云技术分享】#探索鲲鹏#之“在鲲鹏上使用编程语言——C语言
  10. Coinbase在今日比特币下跌时出现宕机
  11. 万能工具,完全免费实现各种超实用功能
  12. Android 集成google地图 准备工作
  13. 国内域名转入到AWS-Route53的操作实践经验分享
  14. FlinkX配置文件解析
  15. 27 周刊 | 这周我看到的?
  16. Tomcat 在本地创建虚拟目录myapp
  17. 3dmax应用领域_3D打印的应用领域是什么?
  18. C/C++ Qt StatusBar 底部状态栏应用
  19. python中true用法_使用True/False作为键-如何/为什么这样做?
  20. Word文件交换的电脑打开字体、排版变化的原因和解决方法!

热门文章

  1. SQL数据库基本语句
  2. iOS-脚本打包出现的问题最后居然这么解决了
  3. 【3d游戏模型】女骑士制作指南:硬表面和纹理
  4. 计算机科学期末网页大作业快看漫画源码(纯享免费版)需要自取免费配置环境
  5. jmeter_Ramp-up Period(in seconds)设置的作用及用法
  6. 访问windows azure虚拟机iis服务器,Azure使用文件共享从IIS虚拟机共享照片?
  7. ajax如何使用,页面如何调试
  8. 基于亚像素的边缘检测方法
  9. Java***冒泡排序***
  10. 苹果iPhone手机内文件目录大全