0
点赞
收藏
分享

微信扫一扫

上传压缩包并解压到指定文件夹

静鸡鸡的JC 2022-01-10 阅读 87

zip类文件上传的方法

@RegisterToSMP(serviceDisplay = "上传zip文件并解压")
	@RequestMapping(value = "apiName", method = RequestMethod.POST)
	public DataResult uploadFile(@RequestParam("zipFile") MultipartFile zipFile) throws ZipException{
		DataResult dr = new DataResult();
		// 得到上传时的文件名
		String zipName = zipFile.getOriginalFilename();
		log.info("zipname:" + zipName);
		// 得到文件后缀
		String suffix = zipName.substring(zipName.lastIndexOf(".") + 1);
		log.info("suffix:" + suffix);
		String path = "F:\\img";
		File file = new File(path+"\\"+zipName);
		// 如果不存在当前目录
		if (!file.getParentFile().exists()) {
			// 创建多层目录
			file.getParentFile().mkdirs();
		}
		try {
		    // 压缩包上传到file
			zipFile.transferTo(file);
			dr.setSuccess(true);
		} catch (IllegalStateException e) {
			dr.setSuccess(false);
			e.printStackTrace();
		} catch (IOException e) {
			dr.setSuccess(false);
			e.printStackTrace();
		}
		/**
		 * 开始解压
		 */
		// 创建zipfile指向磁盘上的zip文件
		ZipFile zfile = new ZipFile(file);
		// 解压目录
		String desdir = "F:\\新建文件夹";
		// 解压到desdir目录下
		try {
			zfile.extractAll(desdir);
			dr.setSuccess(true);
		} catch (ZipException e) {
			e.printStackTrace();
			dr.setSuccess(false);
		}
		return dr;
	}

apipost调试入参图:
另附apipost运行入参图:

举报

相关推荐

0 条评论