如何解决java下载文件中文文件名乱码
发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,如何解决java下载文件中文文件名乱码,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。问题引出:上传中文命名的图片,下载显示不了中文名称。
千家信息网最后更新 2024年11月23日如何解决java下载文件中文文件名乱码
如何解决java下载文件中文文件名乱码,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
问题引出:
上传中文命名的图片,下载显示不了中文名称。
如图:
(相关视频教程推荐:java视频教程)
解决方法:
1、sping-mvc.xml部分代码:
2、FileController.java中文文件名获取代码:
获取浏览器格式,根据不同浏览器控制文件名编码格式。
String userAgent = request.getHeader("User-Agent");//获取浏览器名(IE/Chome/firefox)if(userAgent.contains("MSIE")||userAgent.contains("Trident")) {//针对IE或IE为内核的浏览器 fileName=java.net.URLEncoder.encode(fileName,"UTF-8"); }else { fileName=new String(fileName.getBytes("UTF-8"),"ISO-8859-1");//谷歌控制版本}headers.setContentDispositionFormData("attachment", fileName);// 默认下载文件名为原始文件名
其他浏览器控制字符格式:(详细)
String userAgent = request.getHeader("User-Agent");//获取浏览器名(IE/Chome/firefox)if (userAgent.contains("firefox")) { fileName = new String(fileName.getBytes("UTF-8"), "ISO8859-1"); // firefox浏览器 } else if (userAgent.contains("MSIE")) { fileName = URLEncoder.encode(fileName, "UTF-8");// IE浏览器 }else if (userAgent.contains("CHROME")) { fileName = new String(fileName.getBytes("UTF-8"), "ISO8859-1");// 谷歌 } headers.setContentDispositionFormData("attachment", fileName);// 默认下载文件名为原始文件名
看完上述内容,你们掌握如何解决java下载文件中文文件名乱码的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!
文件
文件名
浏览器
浏览
中文
UTF-8
方法
格式
问题
控制
乱码
原始
代码
内容
教程
更多
视频
不同
束手无策
为此
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器安全方面有哪些
网络安全意识培训感想
云计算金属服务器
泰州云服务器安装
智能云金属服务器
服务器自动更改
软件开发任务进度表
手机短信声音软件开发
网络安全宣传青少年日
国内网络安全俱乐部
检索式数据库
数据库视图的更名和删除
淄博市国家网络安全宣传
工控上位机软件开发有前途吗
服务器受到攻击怎么关闭
杭州轻松购网络技术
服务器端出错清联系管理员
大智慧软件不能更新数据库
数据库操作系统设计教程
湖北前端软件开发哪家便宜
播放器显示服务器忙是什么原因
互联网公司都是伪高科技
华池县天气预报软件开发
不同结构数据库之间如何交互
大坪网络安全管理上市公司
销售服务器需要证件吗
request数据库的值
互联网企业的数据库
ea服务器分部
cpu-z软件开发公司