0

我有以下代码来创建一个工作正常的可下载 zip 存档:

ZipFile zip = new ZipFile();
zip.AlternateEncoding = Encoding.UTF8;
zip.AlternateEncodingUsage = ZipOption.Always;
zip.AddFiles(filePaths, false, ".");
string zipName = String.Format("Files_{0}.zip", DateTime.Now.ToString("yyyy-MMM-dd"));
Response.Clear();
Response.BufferOutput = false;
Response.ContentType = "application/zip";
Response.AddHeader("content-disposition", "attachment; filename=" + zipName);
zip.Save(Response.OutputStream);
Response.End();

用户通常在 zip 存档中打开文件而不解压缩该文件。不幸的是,在使用上述代码创建 zip 存档时,我无法在不解压缩的情况下打开文件。尝试打开文件时,会出现一个额外的窗口,如下所示: 在此处输入图像描述

我尝试了两个命名空间:Ionic.Zip 和 SharpCompress,问题出现在任何一个中。任何帮助,将不胜感激。tks

4

1 回答 1

2

您的代码是正确的,但请记住XLSX文件格式是 zip 文件。

发生的事情是,WinRAR 将其视为一个存档,然后将其解压缩。

xlxs您可以配置 WinRAR 并告诉它使用 Excel打开文件。

转到 选项->设置->查看器并选择 Excel 作为http://acritum.com/software/manuals/winrar/html/helpviewersettings.htm关联程序*.xlsx

于 2015-06-11T22:07:01.673 回答