0

我目前有一个 .xsl 文件,我正在使用 XSLT 将其输出为 .xls 文件并用 excel 打开它。

我使用响应对象在 ASP.NET 应用程序中输出它,如下所示:

context.Response.ContentType = "application/vnd.ms-excel";
context.Response.AddHeader("content-disposition", "inline;filename=MyFile.xml");

但是,这会将文件输出为 .xsl 扩展名并显示以下弹出消息:“您尝试打开的文件 'MyFile.xls' 的格式与文件扩展名指定的格式不同。验证文件是在打开文件之前没有损坏并且来自受信任的来源。你想现在打开吗?

我试图找出两件事,是否可以将其输出为 .xlsx 扩展名?因为当我尝试这样做并更改内容类型时,它根本不允许我打开文件,直到我将扩展名设置回 .xls。

第二,您如何通过更改代码来消除该消息?我发现了一些简单地指示您更改设置的响应,例如:http: //support.microsoft.com/kb/948615

但是,客户端要求根本不显示错误消息。任何帮助在这里表示赞赏,谢谢。

4

2 回答 2

1

不要使用 XSLT 来尝试生成 XLSX 文件,因为它不是一个简单的 XML 文件,正如有人所说的那样。您可以使用 NPOI 创建纯 XLS 文件,使用 ExcelPackage 或 ClosedXML 来生成 XLSX 文件。更多的工作,但它实际上是可行的。

于 2012-07-09T21:39:03.030 回答
0

我发现了一些关于如何处理 .XML 文件扩展名的有趣信息。您似乎可以将 XML 文件标记为与 Excel 关联,这将导致 Microsoft XML 编辑器使用 Excel 打开该单个 XML 文件。

于 2012-07-10T14:47:06.837 回答