今天在做文件下载时遇到 ie9 下载文件出现文件名乱码,于是网上查了下 通过判断浏览器版本来进行文件名的编码转换。
代码如下:
// 获取浏览器信息
String agent = request.getHeader("User-Agent").toLowerCase();
// 获取浏览器版本
if(agent.indexOf("msie 9") >0){
fileName = URLEncoder.encode(name, "UTF-8");
}else{ System.out.println();
fileName = new String(name.getBytes("utf-8"), "ISO-8859-1");
}