使用ZipFile

时间:2015-06-10 14:08:54

标签: c# zipfile

我在堆栈溢出时发现了下面的代码,我试过但是并不知道如何完全使用它。

基本上我希望能够使用foreach循环单独压缩所有文件,但我不会在每次更改时都有一个文件列表。

那么我怎样才能将根目录下的文件夹/目录列表放到数组中?

public static void CreateZipFile(string fileName, IEnumerable<string> files)
{
    var zip = ZipFile.Open(fileName, ZipArchiveMode.Create);
    foreach (var file in files)
    {
        zip.CreateEntryFromFile(file, Path.GetFileName(file), CompressionLevel.Optimal);
    }

    zip.Dispose();
}

1 个答案:

答案 0 :(得分:0)

通常我只使用DotNetZip
这段代码:

using (var file = new ZipFile(zipName))
{
    file.AddFiles(fileNames, directoryPathInArchive);
    file.Save();
}

其中zipName是您要创建的zip存档的名称,fileNames是您要放入其中的文件的名称。