通过DotNetZip库以编程方式提取ZIP文件? [英] Extract a ZIP file programmatically by DotNetZip library?
本文介绍了通过DotNetZip库以编程方式提取ZIP文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个获取ZIP文件并将其提取到目录
中的函数(我使用 DotNetZip 库。)
I have a function that get a ZIP file and extract it to a directory (I use DotNetZip library.)
public void ExtractFileToDirectory(string zipFileName, string outputDirectory)
{
ZipFile zip = ZipFile.Read(zipFileName);
Directory.CreateDirectory(outputDirectory);
zip.ExtractAll(outputDirectory,ExtractExistingFileAction.OverwriteSilently);
}
我的ZIP文件包含多个文件和目录。但是我只想提取其中一些文件中的
,而不是全部。
My ZIP file contains multiple files and directories. But I want to extract only some of these files, not all of them.
我如何进行这项工作?
推荐答案
您需要测试每个 ZipEntry 以查看是否要提取它:
You need to test each ZipEntry to see if you want to extract it:
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);
}
}
。
ZipFile zip = ZipFile.Read(zipFileName); //Runs in framework 4.5
这篇关于通过DotNetZip库以编程方式提取ZIP文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文