public class UnZipUtils {public static synchronized boolean unzip(String zipFileName, String extPlace)throws Exception {return unZipFiles(zipFileName, extPlace);}/*** 解压zip格式的压缩文件到指定位置* * @param zipFileName 压缩文件* @param extPlace 解压目录* @throws Exception*/public static boolean unZipFiles(String zipFileName, String extPlace)throws Exception {// System.setProperty("sun.zip.encoding",// System.getProperty("sun.jnu.encoding"));try {(new File(extPlace)).mkdirs();File f = new File(extPlace + zipFileName);@SuppressWarnings("resource")ZipFile zipFile = new ZipFile(extPlace + zipFileName); // 注意一定要传入绝对路径否则解压不了if ((!f.exists()) && (f.length() <= 0)) {throw new Exception("要解压的文件不存在!");}String strPath, gbkPath, strtemp;File tempFile = new File(extPlace);System.out.println("tempFile is Exist 新建解压文件" + tempFile + ": "+ tempFile.exists());strPath = tempFile.getAbsolutePath();Enumeration<?> e = zipFile.entries();while (e.hasMoreElements()) {ZipEntry zipEnt = (ZipEntry) e.nextElement();gbkPath = zipEnt.getName();if (zipEnt.isDirectory()) {strtemp = strPath + File.separator + gbkPath;File dir = new File(strtemp);dir.mkdirs();continue;} else {// 读写文件InputStream is = zipFile.getInputStream(zipEnt);BufferedInputStream bis = new BufferedInputStream(is);gbkPath = zipEnt.getName();strtemp = strPath + File.separator + gbkPath;// 建目录String strsubdir = gbkPath;for (int i = 0; i < strsubdir.length(); i++) {if (strsubdir.substring(i, i + 1).equalsIgnoreCase("/")) {String temp = strPath + File.separator+ strsubdir.substring(0, i);File subdir = new File(temp);if (!subdir.exists())subdir.mkdir();}}FileOutputStream fos = new FileOutputStream(strtemp);BufferedOutputStream bos = new BufferedOutputStream(fos);int c;while ((c = bis.read()) != -1) {bos.write((byte) c);}bos.close();fos.close();}}System.out.println("tempFile is Exist unzip success !");return true;} catch (Exception e) {e.printStackTrace();System.out.println("tempFile is Exist unzip fail !");return false;}}
}

java 解压zip文件相关推荐

  1. java解压zip文件

    package com.chuangqi.tools;import org.apache.tools.zip.ZipEntry; import org.apache.tools.zip.ZipFile ...

  2. java解压zip文件,处理文件名不能为中文

    1.最近工作需要把压缩文件解压,经过测试有两种方法,一种是JDK自带的ZipFile,       另外一种是org.apache.tools.zip进行解压. 2.经测试,JDK自带的文件不能处理文 ...

  3. Java解压zip文件(文本)压缩包

    2019独角兽企业重金招聘Python工程师标准>>> 说明:由于我们的日志收集到指定服务器上,会按天压缩成一个zip格式的压缩包,但是有时候需要对这些日志进行处理,人工解压在处理, ...

  4. Java解压Zip文件 小结

    1.首先,列举以下会提及到的三种解压方式:操作7z.exe解压.使用ant-1.9.6.jar解压.使用zip4j-1.3.2.jar解压. 2.第一种:java操作7z.exe解压文件,其实就是通过 ...

  5. 【无标题】JAVA解压ZIP文件并解析Excel(easyExcel)

    返回值我用的是公司自定义的FT框架 具体返回值根据公司而定 一般在上传文件,PDF,Excel,zip压缩包时 后端基本都用MultipartFile接收 一定加上Http请求方便后续拼接路径 需求: ...

  6. java csv文件tozip后损坏_java上传并下载以及解压zip文件有时会报文件被损坏错误分析以及解决...

    情景描述: 1.将本地数据备份成zip文件: 2.将备份的zip文件通过sftp上传到文件服务器: 3.将文件服务器上的zip文件下载到运行服务器: 4.将下载的zip文件解压到本地(文件大小超过50 ...

  7. web上传zip大文件,java服务接收并解压ZIP文件

    目录 一.背景 二.知识点 三.代码实现 1.依赖 2.web 代码 3. java服务端 一.背景 公司产品小伙伴画了原型后,需要上传到服务器上供开发查看:由于文件数量很多,100M左右差不多要传3 ...

  8. java 解压文件_java实现解压zip文件,(亲测可用)!!!!!!

    项目结构: Util.java内容: package com.cfets.demo; import java.io.File; import java.io.FileOutputStream; imp ...

  9. Java 压缩与解压zip文件

    一.压缩文件大致可以分为三种:ZIP.JAR.GZ. 压缩流 在日常中经常会使用到像WinRAR或WinZIP这样的压缩文件,通过这些软件可以把一个很大的文件进行压缩以方便传输. 在JAVA中,为了减 ...

  10. 【Android 安全】DEX 加密 ( 代理 Application 开发 | 解压 apk 文件 | 判定是否是第一次启动 | 递归删除文件操作 | 解压 Zip 文件操作 )

    文章目录 一.判定是否是第一次启动 二.递归删除文件操作 三.解压 Zip 文件操作 四.解压操作相关代码 参考博客 : [Android 安全]DEX 加密 ( 常用 Android 反编译工具 | ...

最新文章

  1. 如何去应付你的上司给你一个变化无常的需求?
  2. Python两数之和,并返回下标
  3. Mysql大型数量下的数据库构建的30条建议
  4. 获取成员函数地址及获取函数地址
  5. strictmath_Java StrictMath sqrt()方法与示例
  6. php 入库乱码,解决php 中文字符入库或显示乱码的简单示例
  7. 【连载】【FPGA黑金开发板】NIOS II那些事儿--SDRAM实验(十二)
  8. Perf -- Linux下的系统性能调优工具
  9. 总结两种最常用的python打包方式
  10. java杯子换水_水壶问题(向水壶中倒z升水) Water and Jug Problem
  11. 微信小程序免300元认证费的方法,无需续费年检!
  12. IPv4掩码与掩码位数的转换
  13. 数据可视化——tableau 数据报表样例(报表模板)
  14. Android 应用分屏
  15. 普通路由器和聚合路由器的区别
  16. shaper与policer
  17. 浅谈学习Scratch的必要性
  18. 学习Spreadsheet常用属性
  19. ESP8266学习之路一——WiFi STA
  20. kafka配置文件 中文乱码_使用kafka consumer api时,中文乱码问题

热门文章

  1. JQuery、BootStrap实现鼠标悬浮出现下拉框
  2. 网页端显示中文乱码问题
  3. apkpure官方地址_apkpure安装包_apkpure手机app_apkpure最新版_易玩网
  4. JDK1.8 Stream获取非重复值
  5. 基于双隐含层的BP神经网络数据预测matlab仿真
  6. 前端实现登录、登出、请求数据的一些思路整理
  7. BOSS直聘+Chatgpt+RPA
  8. 2015计算机一级试题及答案,2015年计算机一级统考试题及答案
  9. 利用RJ11电话接口收发电子传真,节约纸张且便于备份
  10. Python 实现相同的PPT合并,实现方便打印