1. 程式人生 > >檔案匯出_TXT、EXCEL:檔案下載,直接流寫出

檔案匯出_TXT、EXCEL:檔案下載,直接流寫出

web專案中,檔案匯出一般都是直接呼叫瀏覽器的下載。這裡採用流寫出,是為了不在伺服器上保留檔案佔用空間。

流寫出時,關鍵是配置response的三個屬性:編碼、型別、標頭檔案

1、ContentType:傳輸檔案型別

application/octet-stream------------------自動匹配檔案型別

application/force-download--------------強制下載

text/pain---------------------------------------文字檔案

application/vnd.ms-excel-----------------excel檔案

2、CharacterEncoding:編碼採用通用的UTF-8

3、Header:setHeader(name,value),有兩個引數

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

示例:

response.setContentType("application/vnd.ms-excel");

response.setCharacterEncoding("UTF-8");

response.setHeader("Content-Disposition","attachment;filename=problems"+AMDateUtil.date2String(new Date(),"yyyyMMdd")+".xlsx");

講得如此膚淺,喜歡深挖的朋友們可以自行檢視api。

備註:下載時檔名稱中文亂碼,暫採用的方式是避免中文互動。

在此還提供一檔案下載的思路,即先生成檔案連結再行下載。