我有一个获取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);
}
}