我有一个获取ZIP文件并将其提取到目录的功能
(我使用DotNetZip库。)

public void ExtractFileToDirectory(string zipFileName, string outputDirectory)
{
     ZipFile zip = ZipFile.Read(zipFileName);
     Directory.CreateDirectory(outputDirectory);
     zip.ExtractAll(outputDirectory,ExtractExistingFileAction.OverwriteSilently);
}

我的ZIP文件包含多个文件和目录。但我只想提取
其中一些文件,不是全部。

我该如何工作?

最佳答案

您需要测试每个ZipEntry以查看是否要提取它:

public void ExtractFileToDirectory(string zipFileName, string outputDirectory)
{
     ZipFile zip = ZipFile.Read(zipFileName);
     Directory.CreateDirectory(outputDirectory);
      foreach (ZipEntry e in zip)
      {
        // check if you want to extract e or not
        if(e.FileName == "TheFileToExtract")
          e.Extract(outputDirectory, ExtractExistingFileAction.OverwriteSilently);
      }
}

09-27 07:02