我看到这个问题已经被问了好几次才但以防万一它可能已经逃脱一些人眼中我陈述问题再次保存HTML表格到Excel
我们ASP.Net Web应用程序显示呈现为一些报道屏幕上的html表格,我们也有导出功能。这是一个标准的代码
Table a = new Table();
Response.ClearContent();
Response.Buffer = true;
Response.AddHeader("content-disposition", string.Format("attachment; filename={0}", "Customers.xls"));
Response.ContentType = "application/ms-excel";
StringWriter sw = new StringWriter();
HtmlTextWriter htw = new HtmlTextWriter(sw);
gridName.RenderControl(htw);
Response.Write(sw.ToString());
Response.End();
到目前为止好。问题是,当导出为Excel时,它实际上被保存为html,所以当文件被Excel打开时,会出现警告,说格式不正确。这并不是什么大问题,因为警告文件将会打开。
但IE11有时这些文件拒绝打开说格式不正确。由于IE11将推出给越来越多的用户,我们将不得不解决这个问题。我的选择是
找到一种方法将其保存为XLS文件,而不是HTML
重写整个输出为Excel当点击出口,而不是渲染控制输出到Excel。我们在我们的项目中使用Aspose,所以我可以这样做
我确实试图找出,但找不到任何可以让您将内容保存为实际xls数据而不是html的内容。我相信这是一个非常普遍的问题,所以如果任何人有任何解决方案或建议相同。
如果什么都行不通,我将不得不采取选项2,这是更多的工作考虑格式和样式。
2014-03-19
Yatish