我有一个函数可以获取一个 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);
}
}
关于c# - 通过 DotNetZip 库以编程方式提取 ZIP 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2324626/