1 /**
2 * 设置下载时 文件名显示为中文 屏蔽了浏览器的差异
3 */
4 public static void setFileDownloadHeader(HttpServletRequest request,
5 HttpServletResponse response, String fileName) {
6 final String userAgent = request.getHeader("USER-AGENT");
7 boolean isMSIE = (userAgent != null && userAgent.indexOf("MSIE") != -1);
8 try {
9 String finalFileName = null;
10 if (isMSIE) {// IE浏览器
11 finalFileName = URLEncoder.encode(fileName, "UTF8");
12 } else {
13 finalFileName = new String(fileName.getBytes("UTF-8"),
14 "ISO8859-1");
15 ;// 其他浏览器
16 }
17 response.setHeader("Content-Disposition", "attachment; filename=\""
18 + finalFileName + "\"");// 这里设置一下让浏览器弹出下载提示框,而不是直接在浏览器中打开
19 } catch (UnsupportedEncodingException e) {
20 e.printStackTrace();
21 }
22 }