由于7z.exe所在路径,以及解压目录中可能包含中文特殊字符,导致解压失败,所以最好将各部分路径使用双引号包含起来。

如:CString str;
str.Format(L"\"%s\\7z.exe\" x \"%s\" -o\"%s\"", strAppPath, strZipPath, strDestDirPath);

1、.rar     有开源库unrar,可以直接在代码中解压。

2、.zip     有开元库zlib,可以直接在代码中解压

3、其他格式如tar、7z等,建议使用7zip命令行形式。

网上下载7zip安装文件,然后使用7z.exe和7z.dll即可。速度非常快

命令参数如下:

 
现在大家都用WinRAR,不知道听说过7zip的朋友多不多。7zip是一个开源的压缩软件,非常小巧,提供的功能和WinRAR差不多,但支持的格式 几乎比后者多一倍。根据我的使用经验,其7z压缩格式的压缩速度及压缩比也领先于WinRAR(WinRAR亦可识别7z格式,故不必担心兼容性问题)。 另一点重要的是,7z完全开源,包括压缩算法,而且还可以方便地使用它提供的库,在自己的程序中集成压缩功能。
这次继续研究常用工具的命令行用 法。7zip的核心程序是7z.exe,命令行格式为:7z <command> [<switches>...] <archive_name> [<file_names>...] [<@listfiles...>]。
command为操作指令,如下:
a 添加到压缩文件
b 基准测试,测试7z当前性能
d 从压缩文件中删除
e 从压缩文件中解压缩,但不包含目录结构(即所有各级文件都解压到一个目录里)
l 列出压缩文件的内容
t 测试压缩文件
u 更新文件到压缩文件
x 从压缩文件中解压缩,包含目录结构

可见,最常用的指令是a, l和x.
具体使用,举几个例子就明白了:

压缩a.txt和b.txt到c.7z: 
7z a c.7z a.txt b.txt (命令a后的第一个为目标压缩文档名,然后是文件列表)

压缩a.txt和b.txt到D:\Program Files\c.7z:
7z a D:\"Program Files"\c.7z a.txt b.txt (目录名包含空格,用引号)

列出c.7z的内容:
7z l c.7z

解压缩c.7z到E:\Program Files:
7z x c.7z -oE:Program Files\c (-o表示输出目录,其与目录路径之间没有空格)
如果文件夹 E:Program Files\c 不存在,会自动创建。

如果要生成zip压缩包,可以直接将目标压缩包名设为c.zip,则它会自动使用zip算法压缩。

各种格式的压缩包解压,7zip 命令行的更多相关文章

  1. 7-zip命令行详解

    一.简介 7z,全称7-Zip, 是一款开源软件.是目前公认的压缩比例最大的压缩解压软件. 主要特征: # 全新的LZMA算法加大了7z格式的压缩比 # 支持格式: * 压缩 / 解压缩:7z, XZ ...

  2. centos7 tar.xz格式文件的解压方法

    现在很多找到的软件都是tar.xz的格式的,xz 是一个使用 LZMA压缩算法的无损数据压缩文件格式. 和gzip与bzip2一样,同样支持多文件压缩,但是约定不能将多于一个的目标文件压缩进同一个档案 ...

  3. tar.xz格式文件的解压方法(转载)

    转自:http://bbs.chinaunix.net/thread-3610738-1-1.html 现在很多找到的软件都是tar.xz的格式的,xz 是一个使用 LZMA压缩算法的无损数据压缩文件 ...

  4. [转]Linux下 tar.xz格式文件的解压方法

    现在很多找到的软件都是tar.xz的格式的,xz 是一个使用 LZMA压缩算法的无损数据压缩文件格式. 和gzip与bzip2一样,同样支持多文件压缩,但是约定不能将多于一个的目标文件压缩进同一个档案 ...

  5. Kali Linux解压包命令:

    Kali Linux解压包命令: tar.gz格式压缩包: root@kali:~# tar -xzvf 压缩包.tar.gz -C /root/home/Desktop root@kali:~# c ...

  6. 把自解压的RAR压缩包解压到指定的软件安装目录

    原文 把自解压的RAR压缩包解压到指定的软件安装目录 今天千里独行同学给轻狂来信问了一个问题:如何把一个自解压的RAR压缩包解压到我们指定的软件安装目录.   其实,在NSIS中,我们可以灵活运用相关 ...

  7. Java压缩包解压到指定文件

    在获得一个以Zip格式压缩的文件之后,需要将其进行解压缩,还原成压缩前的文件.若是使用Java自带的压缩工具包来实现解压缩文件到指定文件夹的功能,因为jdk提供的zip只能按UTF-8格式处理,而Wi ...

  8. ubuntu解压文件命令大全

    ubuntu 下rar解压工具安装方法: 压缩功能 安装 sudo apt-get install rar 卸载 sudo apt-get remove rar 解压功能 安装 sudo apt-ge ...

  9. 7zip 命令行

    转自 http://www.cnblogs.com/langlang/archive/2010/12/01/1893866.html 7z.exe 是 7-Zip 的命令行版本.7z.exe 使用 7 ...

随机推荐

  1. go-restful 实现一个web server

    go web server 1. 在ubuntu上安装go. 在ubuntu14.04上目前,最高的版本是golang-1.6 $ sudo apt-get install  golang-1.6 $ ...

  2. phpstorm怎么设置每个function都用那条横线隔开

  3. 如何使用python来对二维数组进行排序

    1.复合排序 直接用numpy的lexsort就可以 import numpy as np data = np.array([[1,2,3,4,5], [1,2,3,6,7], [2,3,4,5,7] ...

  4. POJ 2029 (二维树状数组)题解

    思路: 大力出奇迹,先用二维树状数组存,然后暴力枚举 算某个矩形区域的值的示意图如下,代码在下面慢慢找... 代码: #include<cstdio> #include<map> ...

  5. RHEL7--linux系统启动流程与故障排除

    一.Linux启动过程 MBR保存着系统的主引导程序(grub 446字节,分区表64字节),启动过程就是把内核加载到内存. 启动的顺序: 1.BIOS: 2.BIOS激活MBR: 3.MBR中的引导 ...

  6. Pytorch版本yolov3源码阅读

    目录 Pytorch版本yolov3源码阅读 1. 阅读test.py 1.1 参数解读 1.2 data文件解析 1.3 cfg文件解析 1.4 根据cfg文件创建模块 1.5 YOLOLayer ...

  7. 解决 Github:failed to add file / to index 问题

    参考: Github:failed to add file / to index 解决 Github:failed to add file / to index 问题 在通过Github for Ma ...

  8. Mac OSX 安装qemu

    参考: Installing QEMU on OS X Homebrew Mac OSX 安装qemu 1.Install Homebrew: /usr/bin/ruby -e "$(cur ...

  9. React Native API之 ActionSheetIOS

    ok!先来演示是下效果: 官网教程:http://reactnative.cn/docs/0.31/actionsheetios.html#content 上代码:引入API组件: import Re ...

  10. 小米笔记本 air 12.5寸 支持硬盘参数

    M.2接口 2280规格 单面芯片固态硬盘 PCIE协议