servlet下载Excel出现问题在于:IE提示无法下载

转载:
servlet输出文件下载,IE提示无法下载的问题
[url]
http://hi.baidu.com/%CD%F5%B7%EF%C4%FE/blog/item/28290d13d79ba82bdc540115.html
[/url]
参考资料
Servlet,JSP 动态生成excel文件并提示下载的简单方法
[url]http://www.blogjava.net/netnova/archive/2009/07/28/146776.html[/url]


解决办法:
一 对应的serlvet输出中增加如下的代码。
输入文件头的部分自行定义。主要是后面设置IE识别的。
Java代码
//输出文件头


response.addHeader("Content-Disposition", "attachment; filename=\"测试.xls\"");
response.setContentType("application/msexcel");
//response.setContentType("application/vnd.ms-excel");


//确保IE识别本次为下载文件


response.setHeader("Content-Transfer-Encoding","binary");
response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
response.setHeader("Pragma", "public");


二 若输出文件名为中文,则要对文件名进行以下字符转换。
String fileName = new String(“文件名为中文".getBytes("gb2312"), "iso8859-1");
转换成iso8859-1 字符集才可正确导出。否则会出此错。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值