c# - 如何以编程方式将目录压缩为 zip 文件

标签 c# .net zip gzip

我想将可以包含任意数量子目录的整个目录压缩到一个 ZIP 文件中。

我能够以编程方式将单个文件压缩成一个 zip 文件。

要压缩整个目录,我可以想到一个遍历每个子目录并压缩它的递归程序。

但是有没有什么简单的方法可以使用类似的代码压缩整个文件夹,而无需编写任何递归函数?

最佳答案

使用 DotNetZip ,ZipFile 类上有一个 AddDirectory() 方法可以执行您想要的操作:

using (var zip = new Ionic.Zip.ZipFile())
{
    zip.AddDirectory("DirectoryOnDisk", "rootInZipFile");
    zip.Save("MyFile.zip");
}

这个例子和许多其他例子是 available on codeplex .

关于c# - 如何以编程方式将目录压缩为 zip 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2498572/

相关文章:

javascript - 在没有 MasterPage 的 asp.net 中将 JavaScript 添加到许多页面(超过 500 个)

c# - 将对象传递给 T4 文本模板

python - 如何对 OOo/LibreOffice Writer 文档进行简单操作,然后保存

c# - Entity Framework - ToList() 和 0 条记录

c# - 如何以编程方式解析命令(例如 gacutil)的路径?

c# - 用大量数据绘制图表的最佳方法是什么?

macos - 使用 `zip`命令压缩文件时如何忽略.DS_Store文件?

c# - 已进行选择时卡住列表框项目的选择

c# - 如何使用具有复杂类型的自动映射器

c# - Ionic Zip 仅提取特定文件夹