关闭

用火狐浏览器下载中文文件名的文件乱码及其解决

标签: 用火狐浏览器下载中文文件名的文件乱码及其
972人阅读 评论(0) 收藏 举报
分类:

java写的下载,用IE默认下载和360浏览器下载都很正常,就是用火狐浏览器下载时,文件名称的中文字为乱码,解决方式记录于此:

先在页面做下判断,判断是什么浏览器,然后传一个参数到servlet,进行用不同的编码方式:
火狐的:
response.addHeader("Content-Disposition", "attachment;filename="+ new String(fileName.getBytes("GB2312"),"ISO-8859-1"));
IE及其他:
response.addHeader("Content-Disposition", "attachment; filename="+ URLEncoder.encode(fileName, "UTF-8"));


参考其他资料,火狐中文文件名乱码可以先将中文文件名做Base64编码处理后可按一般浏览器的方式处理,具体可以参考:

http://bbs.csdn.net/topics/370099592


顺便说下java怎么判断浏览器的类型:

request.getHeader("User-Agent")中有含有浏览器操作系统等信息。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:112165次
    • 积分:2011
    • 等级:
    • 排名:第19262名
    • 原创:74篇
    • 转载:56篇
    • 译文:0篇
    • 评论:5条
    最新评论