ZIP (.zip)

背景

    • 注册的 MIME 类型:application/zip
    • 流行的数据压缩和存档格式.
    • 用于减少存储空间和传递时间.
    • 二进制格式.
    • 可以包含多个文件.
    • 支持各种压缩方法.
    • 于 1989 年由 Phil Katz 出版.

Import 与 Export

  • 当从一个包含被支持的多文件的 ZIP 文档导入时,将对该格式使用转换器.
  • Import["file.zip"] 返回形式为{"fn1", "fn2",} 的表达式,给出 "file.zip" 中所有文件的完整路径规范.
  • Import["file.zip",elem] 从 ZIP 文件中导入指定的参数.
  • Import["file.zip","fn"] 从文档中提取 "fn" 并导入.
  • Import["file.zip",{elem,suba,subb,}] 导入一个子参数.
  • Import["file.zip",{{elem1,elem2,}}] 导入多个参数.
  • Import["file","ZIP"]Import["file",{"ZIP",elem,}] 以一个 ZIP 文档导入任何文件.
  • Export["file.zip",expr,elem] 通过把 expr 作为指定参数 elem 创建一个 ZIP 文档.
  • Export["file.zip",{expr1,expr2,},{{elem1,elem2,}}] 把每一个 expri 指定为相应的 elemi.
  • Export["file.zip","fn"->expr]expr 导出到一个文件并压缩为 ZIP 文档,从 "fn" 的文件扩展名中推断文件格式.
  • Export["file.zip","fn1"->expr1,"fn2"->expr2,] 把多个表达式导出为一个 ZIP 文件文档.
  • 请到以下参考页面了解完整的基本信息:
  • Import, Export从文件导入或导出到文件
    CloudImport, CloudExport从云对象导入或导出到云对象
    ImportString, ExportString从字符串导入或导出到字符串
    ImportByteArray, ExportByteArray从字节数组导入或导出到字节数组

Import 参数

  • Import 的通用参数:
  • "Elements" 该文件可用的参数和选项列表
    "Summary"文件摘要
    "Rules"所有可用参数的规则列表
  • 以下可用于 ZIP 文档选择或指定单个文件:
  • "FileNames"文件名称列表表示一个 ZIP 文档的内容
    "filename"单个文件
    "filename","format" 按指定格式获取的单个文件
    "filename","format",elem指定文件中的参数 elem
  • 对于 ZIP 格式,Import 默认使用 "FileNames" 参数.
  • Import["file.zip","fn"] 提取并导入文件 "fn".
  • 文件名称可以包括相对或绝对目录规范以及由 StringMatchQ 支持的缩略的字符串模式.
  • Import["file.zip","*"] 导入整个文档.
  • Import["file.zip","dir/*.jpg"]dir 子目录中导入所有 JPEG 文件.
  • Export["file.zip","file1.gif"->expr1,"file2.txt"->expr2] 创建一个包含 GIF 和 Text 文件的 ZIP 文档.
  • Export["file",{expr1,expr2},{"ZIP",{{"file1","GIF"},{"file2","Text"}}}] 等同于上面的表达式.

选项

范例

打开所有单元关闭所有单元

基本范例  (1)

以下创建一个包含 GIF 和文本文件的 ZIP 文档:

导入一个 ZIP 文档并给出文档中的文件名称:

用默认参数导入所有文件:

提取并导入 GIF 文件:

提取并导入所有文本文件:

范围  (1)

用于 ZIP 文档的参数:

从 ZIP 文档中的文件提取可用参数:

从文档中的文件导入部分参数:

导入不同格式的多个文件的默认参数:

导入参数  (1)

"FileNames"  (1)

获取 ZIP 文档中所有文件的名称:

以下也是默认参数:

导出选项  (1)

CompressionLevel  (1)

获取要导出的文本:

默认情况下,使用过最大的压缩量:

该结果与 CompressionLevel1 相等:

指定最小的压缩量:

属性和关系  (2)

获取要导出的文本:

将 ZIP、TARGZ 和 TARBZ2 压缩与未压缩的大小进行对比:

对比 ZIP、TARGZ、TARBZ2 和 TARZST 的压缩速度:

压缩量取决于要压缩的数据,例如,JPEG 图像已被压缩,ZIP 无法对其进行进一步压缩: