[英]DotNetZip in C# webapp - how to change the name of the zip folder structure
这是我的应用程序中的代码
Response.ContentType = "application/zip";
Response.AddHeader("content-disposition", "filename=" + "filename.zip");
using (ZipFile zip = new ZipFile())
{
zip.AddEntry(@"F:\My Pictures\2011\DSC04854.jpg", @"\");
zip.AddEntry(@"F:\My Pictures\2011\DSC04854.jpg", @"\");
zip.AddEntry(@"F:\My Pictures\2011\DSC04854.jpg", @"\");
zip.Save(Response.OutputStream);
}
Response.Close();
我想创建一个 zip 文件,该文件具有简化的文件夹结构(即一个文件夹),写为 output。
我已经看到了类似问题的一些答案,并且我尝试了很多建议,但是我没有得到想要的结果。 此代码生成具有完整文件夹结构的 zip 文件。
任何人都可以帮忙吗?
您正在使用 AddEntry,您想要的是 AddFile; AddFile 的第二个参数(当一个字符串时)是内部目录。
我有同样的问题,但使用zip.AddFiles(filePaths)
仍然创建完整的分层 zip 文件。 我遇到了另一个简单地解决这个问题的重载。 只需使用: zip.AddFiles(filePaths,false,".")
第二个参数是 > 保留层次结构 第三个参数是您只想用来生成 zip 文件的结构。 使用
“。” 表示不允许嵌套文件夹或仅在当前文件夹上使用 zip!
将条目添加到 Zip 时,可以将第二个参数留空以将文件放在文件夹的根目录中。
zip.AddEntry(link_to_file.format, string.Empty);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.