0

我想这很简单,但我在 DotNetZip 示例或文档中找不到任何可以帮助我的东西。我需要将一个文件夹添加到一个包含文件夹和文件的 zip 中,我需要维护文件夹而不是只压缩它们的文件,而是使用以下内容总是会删除文件夹:

 using (ZipFile zip = new ZipFile())
                {
                    string[] files = Directory.GetFiles(@TempLoc);
                    string[] folders = Directory.GetDirectories(@TempLoc);
                    zip.AddFiles(files, "Traces");

                    foreach (string fol in folders)
                    {
                        zip.AddDirectory(fol, "Traces");
                    }

                    zip.Comment = "These traces were gathered " + System.DateTime.Now.ToString("G");
                    zip.Save(arcTraceLoc + userName.Text + "-Logs.zip");
                }

我正在使用循环,因为在 DotNetZip 中找不到类似于“AddFiles”的文件夹的功能。

谢谢。

4

1 回答 1

5

我认为这是你需要的:

  bool recurseDirectories = true;
  using (ZipFile zip = new ZipFile())
  {
    zip.AddSelectedFiles("*", @TempLoc, string.Empty, recurseDirectories);
    zip.Save(ZipFileToCreate);
  }
于 2013-10-21T17:32:16.027 回答