Response.Clear();
Response.Charset = "utf-8";
Response.ContentType = "application/vnd.ms-excel";
//Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
Response.AppendHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName) + ".xls");
Response.Write("<html><head><META http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"></head><body>");
Response.Write(html);
Response.Write("</body></html>");
Response.Flush();
Response.End();
当定义后缀名为.xls时,导出的文档可以打开但是会有提示
当定义后缀名为.xlsx时,导出的文档就没有办法打开了
本机安装的是office2010
问题:1.为什么后缀名为.xlsx时 文件无法打开?
2.如果要正常打开,代码上应该如何实现 或 其他什么方法?
(请详细说明,谢谢!)
asp.net excel导出问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- threenewbee 2015-07-15 22:03关注
你的代码是网上流传的一段根本错误的代码。
看看你Response.Write都写了什么就知道,你根本在写html而不是excel文件。幸运的是,excel可以识别html并且打开,所以很多人误以为自己的代码实现了导出excel的功能。
你要真正创建一个excel文件,需要用vba或者npoi。解决 无用评论 打赏 举报
悬赏问题
- ¥20 delta降尺度方法,未来数据怎么降尺度
- ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
- ¥15 高德地图点聚合中Marker的位置无法实时更新
- ¥15 DIFY API Endpoint 问题。
- ¥20 sub地址DHCP问题
- ¥15 delta降尺度计算的一些细节,有偿
- ¥15 Arduino红外遥控代码有问题
- ¥15 数值计算离散正交多项式
- ¥30 数值计算均差系数编程
- ¥15 redis-full-check比较 两个集群的数据出错