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获取

你可能感兴趣的:(java)