解决java web中safari浏览器下载后文件中文乱码问题

解决java web中safari浏览器下载后文件中文乱码问题

            String fileName = "测试文件.doc";
            String userAgent = request.getHeader("User-Agent").toLowerCase();
            //Java下载文件时IE浏览器出现文件名乱码
            // 针对IE或者以IE为内核的浏览器:  
            if (userAgent.contains("msie") || userAgent.contains("trident") ) {  
                fileName = java.net.URLEncoder.encode(fileName, "UTF-8");  
            } else {  
                // 非IE浏览器的处理:  
                fileName = new String(fileName.getBytes("UTF-8"), "ISO-8859-1");  
            }  
            response.setContentType("application/octet-stream");
            response.setHeader("Content-disposition", "attachment;filename=\"" + fileName + "\""); 

 

posted @ 2018-03-15 15:54  Java碎碎念  阅读(4326)  评论(0编辑  收藏  举报