如何使用.NET压缩目录?

mas*_*ani 10 c# compression directory file

我有一个包含多个文件的目录.我想将此文件夹压缩为zip或tar.gz文件.我怎样才能在C#中完成他的工作?

Gio*_*rgi 8

您可以使用DotNetZip Library.它具有相当丰富和实用的功能.


编辑:

string[] MainDirs = Directory.GetDirectories(DirString);

for (int i = 0; i < MainDirs.Length; i++)
{
    using (ZipFile zip = new ZipFile())
    {
        zip.UseUnicodeAsNecessary = true;
        zip.AddDirectory(MainDirs[i]);
        zip.CompressionLevel = Ionic.Zlib.CompressionLevel.BestCompression;
        zip.Comment = "This zip was created at " + System.DateTime.Now.ToString("G");
        zip.Save(string.Format("test{0}.zip", i));   
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 只是在答案中添加了一些示例代码,希望您不介意。 (2认同)

Dan*_*May 8

考虑使用SharpZipLib.它支持C#中的GZip和ZIP压缩.

这里有一个很好的教程,概述了使用SharpZipLib压缩目录时需要做什么.