黑马程序员技术交流社区
标题: 【上海校区】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 |