解决文件下载在火狐浏览器出现中文文件名乱码的方法
笔者最近写了个导出Excel的工具,后面发现在火狐浏览器下载的文件的文件名是一串看不懂的字母。
后面找到了解决方法,下面直接上代码。
/** 下载时文件名为中文:乱码解决 */
// 响应的过程:
// 服务器: utf-8|gbk --> iso8859-1 浏览器: iso8859-1 --> utf-8|gbk (firefox、chrome)
// 服务器: gbk --> iso8859-1 浏览器: iso8859-1 --> gbk (msie)
fileName = new String(fileName.getBytes("gbk"), "iso8859-1");
/** 设置下载的文件名 */
response.setHeader("content-disposition", "attachment;filename=" + fileName + ".xlsx");
1
/** 下载时文件名为中文:乱码解决 */
2
// 响应的过程:
3
// 服务器: utf-8|gbk --> iso8859-1 浏览器: iso8859-1 --> utf-8|gbk (firefox、chrome)
4
// 服务器: gbk --> iso8859-1 浏览器: iso8859-1 --> gbk (msie)
5
fileName = new String(fileName.getBytes("gbk"), "iso8859-1");
6
/** 设置下载的文件名 */
7
response.setHeader("content-disposition", "attachment;filename=" + fileName + ".xlsx");
作者:zeng1994
出处:http://www.cnblogs.com/zeng1994/
本文版权归作者和博客园共有,欢迎转载!但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接!