File工具类

 1 package cn.itcast.bos.utils;
 2 
 3 import java.io.IOException;
 4 import java.net.URLEncoder;
 5 
 6 import sun.misc.BASE64Encoder;
 7 
 8 public class FileUtils {
 9 /**
10 * 下载文件时,针对不同浏览器,进行附件名的编码
11 * 
12 * @param filename
13 * 下载文件名
14 * @param agent
15 * 客户端浏览器
16 * @return 编码后的下载附件名
17 * @throws IOException
18 */
19 public static String encodeDownloadFilename(String filename, String agent) throws IOException {
20   if (agent.contains("Firefox")) { // 火狐浏览器
21     filename = "=?UTF-8?B?"+ new BASE64Encoder().encode(filename.getBytes("utf-8"))+ "?=";
22     filename = filename.replaceAll("\r\n", "");
23   } else { // IE及其他浏览器
24     filename = URLEncoder.encode(filename, "utf-8");
25     filename = filename.replace("+"," ");
26   }
27   return filename;
28   }
29 }

 

posted @ 2017-11-26 21:43  龙芳伟  阅读(192)  评论(0编辑  收藏  举报