Java 上傳解壓zip文件,並且解析文件里面的exc...


PS:為了方便不同水平的開發人員閱讀,我把代碼全部寫到Controller里面。這個demo的file入參的類型是MultipartFile,很多網上的例子是File類型。這兩個類型在解析文件的時候還是有點區別的。
第①個方法:

[url=][/url]
1     /** 2      * 這個deomo入參的類型是MultipartFile,很多網上的例子是File類型 3      * @param file (zip) 4      * @paramrequest 5      * @param response 6      * @return 7      * @throws Exception 8      */ 9     @PostMapping("/addPersonsFileOfZip")10     public String addPersonsFileOfZip(@RequestParam("file") MultipartFile file, HttpServletRequest request) throws Exception {11         String createdId = request.getParameter(KEY_CREATED_ID);12         //正常上這里需要檢查一下createdId是否為空13         14         //原則上這個uploadZipFilesAndParse方法需要寫到service和serviceImpl中15         String result =uploadZipFilesAndParse(file,createdId);16         return  result;17     }[url=][/url]

第②個方法:

 View Code

第③個方法:解壓zip文件的unzip方法

 View Code

第④個方法:unzip方法中的inputStreamToFile方法,這個方法的目的是把MultipartFile轉成File類型,但是會在項目根目錄下生成一個臨時文件,切記要刪除

 View Code

第⑤個方法:parseExcelFile方法是解析excel的方法,里面包括我自己項目的邏輯處理,大家可以刪除這些代碼,只保留解析excel的代碼就好

 View Code

第⑥個方法:parseImageFile方法是解析圖片的方法

 View Code

最后附上FileConfig和FileUtil的代碼
FileConfig代碼:

 View Code

FileConfig類里面讀取的配置文件信息:
配置文件類型是yml,大家也可以自己改成properties文件格式

upload:   #localtion: ${UPLOAD_DIR:/home/data/test}  localtion: ${UPLOAD_DIR:D:/test}  maxFileSize: 10240KB   maxRequestSize: 102400KB  

FileUtil類的代碼:

 View Code

水平有限,可能寫得不是很完整,大家copy這些代碼的時候有可能因為引入包的不同,不一定走得成功,如有疑問,在評論區聯系本人,寫得不好的地方也歡迎指正。
更多學習資源可關注:annalin1203獲取


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM