自己寫的簡單csv文件下載

    public void export(HttpServletRequest request, HttpServletResponse response,List<String> dataList,String name){
        try {
//          作用是指定對服務器響應進行重新編碼的編碼
            response.setCharacterEncoding("utf-8");  
            SimpleDateFormat dfs = new SimpleDateFormat("yyyyMMddHHmmss");// 設置日期格式  
            Date time = new Date();  
            String tStamp = dfs.format(time);  
            //設置文件名稱
            String filename = URLEncoder.encode(name+tStamp + ".csv","utf-8");
//          response.setHeader用來設置返回頁面的頭 meta 信息 參數上網找
            response.setHeader("contentType", "text/html; charset=utf-8");  
//                作用是使客戶端瀏覽器,區分不同種類的數據,並根據不同的MIME調用瀏覽器內不同的程序嵌入模塊來處理相應的數據。
            response.setContentType("application/octet-stream");  
            response.addHeader("Content-Disposition", "attachment; filename="+filename);  
//          新建一個file對象
            File file = new File(filename);  
//                獲取response的字符輸出流對象    
//          PrintWriter是一種過濾流
            PrintWriter writer = response.getWriter();

            if(dataList!=null && !dataList.isEmpty()){  
//              向流內寫入數據
                   for(String data : dataList){  
                       writer.print(data);  
                       writer.print("\n");  
                   }  
               }  
//              關閉過濾流
            writer.close();
        } catch (Exception e) {
            // TODO 自動生成的 catch 塊
            e.printStackTrace();
        }

    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章