我的环境:IE8,vs2008,office2007
我想在IE中打开一个Excel文件(xls或xlsx),代码如下:
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "application/vnd.ms-excel";
Response.WriteFile("k:\\12.xls");
Response.Flush();
Response.Close();
打开时会提示:
您尝试打开的文件“default.aspx”的格式与文件扩展名指定的格式不一致。打开文件前请检验文件没有损坏且来源可信。是否立即打开该文件
但是相同的代码,打开word文件(doc或docx)却是正常的:
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "application/msword";
Response.WriteFile("k:\\11.doc");
Response.Flush();
Response.Close();
请问这是为什么,如何才能打开正常Excel文件?
还望各位高人帮个忙,谢谢大家了!
------解决方案--------------------------------------------------------
生成xml格式的xls文件.
或myxls导出
------解决方案--------------------------------------------------------
LZ用的是二进制流的方式导出excel,导出的时候是伪EXCEL,说白了就是在excel里嵌入了HTML代码.
真正的excel导出以后,用txt打开是乱码的.
在网上搜索org.in2bits.MyXls这个第三方控件,非常方便,不产生任何excel进程,而且不用在服务器上装任何office组件