首页 > 技术文章 > 文件下载文件名乱码

warling 2017-12-18 08:53 原文

public static String getDownloadFileName(HttpServletRequest request,
            String fileName) {
        String agent = request.getHeader("User-Agent").toUpperCase();
        try {
            if (agent.indexOf("MSIE") > 0 || agent.indexOf("TRIDENT") > 0 || agent.indexOf("EDGE") > 0) {
                fileName = URLEncoder.encode(fileName, "UTF-8");
                fileName = fileName.replaceAll("\\+", "%20");
            } else {
                fileName = new String(fileName.getBytes("UTF-8"), "ISO8859-1");
            }
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        return fileName;
    }

 

推荐阅读