java下载文件时文件名发生乱码怎么办

java下载文件时文件名发生乱码怎么办?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。   

在合山等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、成都网站制作 网站设计制作按需设计网站,公司网站建设,企业网站建设,高端网站设计,网络营销推广,成都外贸网站建设,合山网站建设费用合理。

在进行文件下载的时候出现中文名称乱码,显示不出来:

response.setHeader(“Content-Disposition”, “filename=自定义的名称.jpg” )

java下载文件时文件名发生乱码怎么办解决办法

对中文名称进行编码处理:

String fileName="自定义名称.jpg";
   //获得浏览器信息并转换为大写
    String agent = request.getHeader("User-Agent").toUpperCase(); 
    if(agent.indexOf("MSIE") > 0 || (agent.indexOf("GECKO")>0 && agent.indexOf("RV:11")>0)){
    //微软的浏览器(IE和Edge浏览器)
        fileName = URLEncoder.encode(fileName, "UTF-8");
     }else {
         fileName = new String(fileName.getBytes("UTF-8"), "iso-8859-1");
      }
     response.setHeader("Content-Disposition", "filename=" + fileName);

使用上面的代码进行编码后,经测试在Chrome, Firefox ,IE ,360浏览器都可以正常显示中文名称。

java下载文件时文件名发生乱码怎么办看完这篇文章,你能够独立解决java下载文件时文件名发生乱码的问题了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读。


本文名称:java下载文件时文件名发生乱码怎么办
转载注明:http://pwwzsj.com/article/jicgsi.html