Java程序下载文件中文名不显示以及乱码问题解决方法

2019-01-15 15:49 阅读 290 次 评论 0 条

在使用Java开发文件上传下载的功能过程中,经常会遇到了中文名不显示的问题,原因是Header中只支持ASCII,传输的文件名必须是ASCII。

解决方法:

filename = new String(filename .getBytes(), "ISO-8859-1");

filename = URLEncoder.encode(file_name,"UTF-8");

response.setHeader("Content-Disposition", "attachment;filename=\"" + filename + "\"");

方法说明:

ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,0xA0-0xFF之间是文字符号。

 

 

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:Java程序下载文件中文名不显示以及乱码问题解决方法 | 猿笔记
分类:JAVA, 程序笔记 标签:,

发表评论


表情