1. 程式人生 > >解決ie和其他瀏覽器poi下載excel檔名亂碼

解決ie和其他瀏覽器poi下載excel檔名亂碼

使用poi,做傳統的excel匯出,然後想在瀏覽器中,讓使用者選擇另存為,儲存使用者下載的xls檔案,這個時候,可能的是在ie下出現亂碼(ie,9,10,11),但在firefox,chrome下沒亂碼,

ie,chrom,firfox下處理檔名顯示亂碼 
     */  
    public static String processFileName(HttpServletRequest request, String fileNames) {  
        String codedfilename = null;  
        try {  
            String
agent = request.getHeader("USER-AGENT"); if (null != agent && -1 != agent.indexOf("MSIE") || null != agent && -1 != agent.indexOf("Trident")) {// ie String name = java.net.URLEncoder.encode(fileNames, "UTF8"); codedfilename =
name; } else if (null != agent && -1 != agent.indexOf("Mozilla")) {// 火狐,chrome等 codedfilename = new String(fileNames.getBytes("UTF-8"), "iso-8859-1"); } } catch (Exception e) { e.printStackTrace(); } return
codedfilename; }
response.setHeader("Cache-Control", "private");  
response.setHeader("Pragma", "private");  
response.setContentType("application/vnd.ms-excel;charset=utf-8");  
response.setHeader("Content-Type", "application/force-download");  

title = FileUtil.processFileName(request, title);  
response.setHeader("Content-disposition", "attachment;filename=" + title + ".xls"); 

這裡寫圖片描述