Asp.net mvc 3 无法在DotNetZip的SelectEntries中获取多个条目
我试图在MVC3项目中使用Asp.net mvc 3 无法在DotNetZip的SelectEntries中获取多个条目,asp.net-mvc-3,dotnetzip,Asp.net Mvc 3,Dotnetzip,我试图在MVC3项目中使用DotNetZipLib-DevKit-v1.9将文件解压缩到特定文件夹 我想要的是——如何在zip.SelectEntries方法中添加多个条目 以下是我在控制器操作中的代码: public ActionResult ExtractZip(string fileName, HttpPostedFileBase fileData) { string zipToUnpack = @"C:\Users\Public\Pictures\
DotNetZipLib-DevKit-v1.9
将文件解压缩到特定文件夹
我想要的是——如何在zip.SelectEntries
方法中添加多个条目
以下是我在控制器操作中的代码:
public ActionResult ExtractZip(string fileName, HttpPostedFileBase fileData)
{
string zipToUnpack = @"C:\Users\Public\Pictures\Sample Pictures\images.zip";
string unpackDirectory = System.IO.Path.GetTempPath();
using (ZipFile zip1 = ZipFile.Read(zipToUnpack))
{
// here, we extract every entry, but we could extract conditionally
// based on entry name, size, date, checkbox status, etc.
var collections = zip1.SelectEntries("name=*.jpg;*.jpeg;*.png;*.gif;");//This shows `0` items in collections
foreach (var item in collections)
{
item.Extract(unpackDirectory, ExtractExistingFileAction.OverwriteSilently);
}
}
return Json(true);
}
在这一行中,var collections=zip1.SelectEntries(“name=*.jpg;*.jpeg;*.png;*.gif;”代码>如果我只指定一个扩展名,它可以正常工作
例:
var collections=zip1.SelectEntries(“name=*.gif”)代码>这很好用
我也见过SelectEntries方法,但它没有帮助
如何添加多个条目?最后我可以回答我自己的问题
要选择多个条目,我们需要使用或,要选择多个条目,请使用以下代码:
var collections = zip1.SelectEntries("(name=*.jpg) OR (name=*.jpeg) OR (name=*.png) OR (name=*.gif)");
foreach (var item in collections)
{
item.Extract(unpackDirectory, ExtractExistingFileAction.OverwriteSilently);
}