黑马程序员技术交流社区

标题: 【上海校区】Java 上传解压zip文件,并且解析文件里面的exc... [打印本页]

作者: 梦缠绕的时候    时间: 2019-10-7 13:16
标题: 【上海校区】Java 上传解压zip文件,并且解析文件里面的exc...
PS:为了方便不同水平的开发人员阅读,我把代码全部写到Controller里面。这个demo的file入参的类型是MultipartFile,很多网上的例子是File类型。这两个类型在解析文件的时候还是有点区别的。
第①个方法:
[url=][/url]
1     /** 2      * 这个deomo入参的类型是MultipartFile,很多网上的例子是File类型 3      * @param file (zip) 4      * @param request 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这些代码的时候有可能因为引入包的不同,不一定走得成功,如有疑问,在评论区联系本人,写得不好的地方也欢迎指正。


作者: 梦缠绕的时候    时间: 2019-10-7 13:17
有问题欢迎在评论区留言
作者: 梦缠绕的时候    时间: 2019-10-7 13:17
或者添加学姐微信
DKA-2018




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2