我希望用户能够上传zip文件。然后我不想解压缩此文件并显示其内容。你会如何在asp.net mvc中实现这个?
答案 0 :(得分:1)
在.NET中有很多处理压缩档案的解决方案,以下主题涵盖了几个选项:Unzip files programmatically in .net。
DotNetZip似乎在Codeplex上非常受欢迎。我在他们的文档中找到了这个代码示例,用于列出控制台应用程序上下文中给定存档中的所有条目。适应网络环境应该相当容易:
using (ZipFile zip = ZipFile.Read(ExistingZipFile))
{
foreach (ZipEntry e in zip)
{
if (header)
{
System.Console.WriteLine("Zipfile: {0}", zip.Name);
if ((zip.Comment != null) && (zip.Comment != ""))
System.Console.WriteLine("Comment: {0}", zip.Comment);
System.Console.WriteLine("\n{1,-22} {2,8} {3,5} {4,8} {5,3} {0}",
"Filename", "Modified", "Size", "Ratio", "Packed", "pw?");
System.Console.WriteLine(new System.String('-', 72));
header = false;
}
System.Console.WriteLine("{1,-22} {2,8} {3,5:F0}% {4,8} {5,3} {0}",
e.FileName,
e.LastModified.ToString("yyyy-MM-dd HH:mm:ss"),
e.UncompressedSize,
e.CompressionRatio,
e.CompressedSize,
(e.UsesEncryption) ? "Y" : "N");
}
}
如果没有实际测试,看起来这个特定的实现可能无法处理文件夹结构,因此您可能需要look through their documentation一点来获取更多信息。