jsp教程實現檔案下載代碼
/*
1.支援單檔案下載。支援多檔案zip壓縮下載。多檔案zip壓縮可在伺服器保留或者刪除副本。支援將特定的字串或者byte數組以指定的檔案名稱提供下載。
2.在下載過程中需要提供response對象。並且選擇下載形式。
3.下載處理前先進行check,避免出現錯誤。
4.下載處理過程中出錯時,會報告錯誤資訊。
5.日文系統下檔案名稱是中文時出現亂碼問題。
6.處理前需要進行相對繁瑣的設定。
設定實現下載必須的response對象。
public void setResponse(HttpServletResponse response)
設定下載方式:0 為普通單檔案下載。 1 為多檔案壓縮成zip包下載。 2 為將指定的字串等拼接成檔案內容提供給使用者下載。
public void setDownType(int fileType)
設定下載時顯示給用的檔案名稱。
public void setDisFileName(String fileName)
壓縮檔下載時,設定壓縮檔暫時儲存的路徑(路徑為絕對路徑)
public void setZipFilePath( String path )
壓縮檔下載時,設定伺服器端產生的壓縮檔是否刪除。True 刪除;false 保留。
public void setZipDelFlag(boolean b)
壓縮檔下載時,設定要壓縮的檔案的檔案路徑(路徑為絕對路徑)
public void setZipFileNames(String[] fileNames)
單檔案下載時,設定下載檔案的路徑(絕對路徑)
public void setDownFileName(String fileName)
將字串組建檔案內容類比下載時,設定檔案的內容。參數為字串(可多次調用)
public int setFileContent(String fileContent)
將字串組建檔案內容類比下載時,設定檔案的內容。參數為byte數組(可多次調用)
傳回值:0 操作正常; 9 出現IO異常。
public int setFileContent(byte[] fileContent)
將字串組建檔案內容類比下載時,調用此方法結束檔案內容設定。
傳回值:0 操作正常; 9 出現IO異常。
public int setFileContentEnd()
主處理函數。
傳回值: 0 處理正常;1 未設定response對象。 2 未設定檔案下載方式。 3 未設定要顯示的檔案名稱。 4 未設定要下載的檔案路徑,或者設定的下載的檔案路徑不存在。 9 IO異常。
public int process()