下載前判斷瀏覽器類型
采用不同的文件名編碼方式
網上通用的做法是使用 javamail里的一個工具類
后來經過試驗,我們可以使用更輕量級的jar包
commons-codec.jar
apache的一個小項目.
下面是實現文件名編碼的方法
-
- public static String encodeFileName(HttpServletRequest request, String fileName) throws UnsupportedEncodingException {
- String agent = request.getHeader("USER-AGENT");
- if (null != agent && -1 != agent.indexOf("MSIE")) {
- return URLEncoder.encode(fileName, "UTF8");
- }else if (null != agent && -1 != agent.indexOf("Mozilla")) {
- return "=?UTF-8?B?"+(new String(Base64.encodeBase64(fileName.getBytes("UTF-8"))))+"?=";
- } else {
- return fileName;
- }
- }
|