解决文件下载在火狐浏览器出现中文文件名乱码的方法详解编程语言

         
 笔者最近写了个导出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");

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/15532.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论