Java解压zip文件的关键代码

作者:梦想、编织着青春 时间:2023-05-11 18:28:34 

废话不多说了,给大家贴关键代码了,具体代码如下所示:


import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipFile;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* @date 创建时间:2016年9月25日 上午11:06:46
* @version 1.0
* @parameter
* @since 2016年9月25日 上午11:06:46
* @return
*/
public class unZipFiles {
//zip文件路径
String fileAddress = "D:\\test.zip";
//zip文件解压地址
String unZipAddress = "F:\\unZipFiles\\";
//去目录下寻找文件
File file = new File(fileAddress);
ZipFile zipFile = null;
try {
zipFile = new ZipFile(file,"GBK");//设置编码格式
} catch (IOException exception) {
exception.printStackTrace();
System.out.println("解压文件不存在!");
}
Enumeration e = zipFile.getEntries();
while(e.hasMoreElements()) {
ZipEntry zipEntry = (ZipEntry)e.nextElement();
if(zipEntry.isDirectory()) {
String name = zipEntry.getName();
name = name.substring(0,name.length()-1);
File f = new File(unZipAddress + name);
f.mkdirs();
} else {
File f = new File(unZipAddress + zipEntry.getName());
f.getParentFile().mkdirs();
f.createNewFile();
InputStream is = zipFile.getInputStream(zipEntry);
FileOutputStream fos = new FileOutputStream(f);
int length = 0;
byte[] b = new byte[1024];
while((length=is.read(b, 0, 1024))!=-1) {
fos.write(b, 0, length);
}
is.close();
fos.close();
}
}
if (zipFile != null) {
zipFile.close();
}
file.deleteOnExit();//解压完以后将压缩包删除
}

好了,代码到此结束,以上所述是小编给大家介绍的Java解压zip文件的关键代码,网站的支持!

来源:http://www.cnblogs.com/lhy2016/archive/2016/09/25/5905883.html

标签:java,解压,zip
0
投稿

猜你喜欢

  • IDEA导出jar打包成exe应用程序的小结

    2023-06-22 04:02:46
  • 详解C#读取Appconfig中自定义的节点

    2022-07-16 08:30:38
  • c#遍历System.drawing.Color下面的所有颜色以及名称以查看

    2022-05-12 06:33:19
  • Unity调用C++ dll实现打开双目相机

    2022-05-28 13:19:51
  • Android监听手机电话状态与发送邮件通知来电号码的方法(基于PhoneStateListene实现)

    2022-12-07 09:03:44
  • 解析C#彩色图像灰度化算法的实现代码详解

    2022-01-26 07:34:55
  • Android中banner的使用步骤

    2023-07-04 17:47:23
  • Android Studio使用教程(五):Gradle命令详解和导入第三方包

    2023-03-06 11:11:26
  • Android系统中的蓝牙连接程序编写实例教程

    2023-09-06 08:59:01
  • C# Winfom 中ListBox的简单用法详解

    2023-03-14 20:38:47
  • Java编程实现判断网上邻居文件是否存在的方法

    2022-12-27 09:49:46
  • java使用@Transactional时常犯的N种错误

    2021-08-16 01:58:44
  • 通过与Java功能上的对比来学习Go语言

    2023-02-18 02:04:53
  • C#操作XML文件步骤

    2021-11-04 21:51:44
  • Android UI效果之绘图篇(二)

    2022-12-06 00:49:15
  • java定义受限制的类型参数操作

    2022-12-16 09:44:03
  • c#自带缓存使用方法 c#移除清理缓存

    2021-09-07 10:20:15
  • Java命令设计模式优雅解耦命令和执行提高代码可维护性

    2023-11-23 06:25:46
  • Android使用SharedPreferences存储数据的实现方法

    2021-08-22 02:05:49
  • 基于Unity编写一个九宫格抽奖软件

    2022-12-30 21:02:00
  • asp之家 软件编程 m.aspxhome.com