我们在做JavaEE项目下载文件时,在我们熟悉的UTF-8编码下经常会发现文件名中文乱码、中文不显示等状况,此时,将文
件名改一下编码或许会解决这个烦恼:
fileName = new String(fileName.replace(" ", "_").getBytes("UTF-8"), "ISO-8859-1");
【注:将空格用下划线替换是为了防止文件名中有空格时下载被firefox截断】
因为http协议默认传输的编码就是iso-8859-1,tomcat也默认采用ISO-8859-1编码集,所以我们转为这个编码集就会解决一
部分乱码的问题。当然,JavaEE项目中造成中文乱码的可能原因很多,下边列出了网上的一些总结,感谢小伙伴们分享!
http://www.ibm.com/developerworks/cn/java/j-lo-chinesecoding/
http://www.cnblogs.com/yezhenhan/archive/2011/01/14/1935376.html
时间: 2024-10-16 13:39:50