使用 DotNetZip 仅从 zip 中提取 XML 文件
Posted
技术标签:
【中文标题】使用 DotNetZip 仅从 zip 中提取 XML 文件【英文标题】:Extract only XML files from a zip using DotNetZip 【发布时间】:2012-09-10 05:33:12 【问题描述】:我想提取存档中的所有 XML 文件,我正在使用 DotNetZip 提取文件。
在 DotNetZip 的文档中,这是一个示例:
using (ZipFile zip = ZipFile.Read(zipArchiveName))
zip.ExtractSelectedEntries("name = *.xml and mtime > 2009-01-15");
这是我的方法:
private void processButton_Click(object sender, EventArgs e)
string uniquePath = string.Format(@"C:\0", Guid.NewGuid());
System.IO.Directory.CreateDirectory(uniquePath);
using (ZipFile zip = ZipFile.Read(textBox1.Text))
zip.ExtractSelectedEntries("name = *.xml");
但它什么也没提取。如何使用 DotNetZip 提取所有 xml 文件,谢谢您的帮助。
【问题讨论】:
【参考方案1】:设置uniquePath为当前目录,
string uniquePath = string.Format(@"C:\0", Guid.NewGuid());
System.IO.Directory.CreateDirectory(uniquePath);
using (ZipFile zip = ZipFile.Read(textBox1.Text))
System.IO.Directory.SetCurrentDirectory(uniquePath);
zip.ExtractSelectedEntries("name = *.xml",,ExtractExistingFileAction.OverwriteSilently);
或者使用,
var collections=zip.SelectEntries("name=*.xml");
foreach (var t in collections )
t.Extract(uniquePath,ExtractExistingFileAction.OverwriteSilently);
【讨论】:
@AVD 我需要将特定类型指定为*.jpg
和*.png
。如何将其添加到收藏夹中?以上是关于使用 DotNetZip 仅从 zip 中提取 XML 文件的主要内容,如果未能解决你的问题,请参考以下文章
如何在 asp classic 中使用 ionic zip 或 dot net zip
C# .NET 使用第三方类库DotNetZip解压/压缩Zip文件