response.setheader(“content-disposition”, “filename=自定义的名称.jpg” )
解决办法
对中文名称进行编码处理:
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下载文件文件名乱码解决方法的详细内容。
