当前位置: 首页 > 编程笔记 >

Java解压zip文件的关键代码

楚志强
2023-03-14
本文向大家介绍Java解压zip文件的关键代码,包括了Java解压zip文件的关键代码的使用技巧和注意事项,需要的朋友参考一下

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

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文件的关键代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!

 类似资料:
  • 本文向大家介绍Python压缩解压缩zip文件及破解zip文件密码的方法,包括了Python压缩解压缩zip文件及破解zip文件密码的方法的使用技巧和注意事项,需要的朋友参考一下 python 的 zipfile 提供了非常便捷的方法来压缩和解压 zip 文件。 例如,在py脚本所在目录中,有如下文件: 将 readability 目录中的文件压缩到脚本所在目录的 readability.zip

  • 本文向大家介绍Java解压和压缩带密码的zip文件过程详解,包括了Java解压和压缩带密码的zip文件过程详解的使用技巧和注意事项,需要的朋友参考一下 前言 JDK自带的ZIP操作接口(java.util.zip包,请参看文章末尾的博客链接)并不支持密码,甚至也不支持中文文件名。 为了解决ZIP压缩文件的密码问题,在网上搜索良久,终于找到了winzipaes开源项目。 该项目在google cod

  • 问题内容: 我正在下载包含XML的压缩文件,由于延迟要求,我希望避免在操作之前将zip文件写入磁盘。但是,这不足以满足我的需求。没有办法说“这是一个zip文件的字节数组,请使用它”而不将其转换为流,并且它不可靠,因为它会扫描条目标头(请参阅EDIT下面的讨论,以了解为什么它不可靠)。 我尚无法访问要处理的zip文件,因此我不知道我是否能够通过来处理它们,因此我需要找到一种适用于任何有效ZIP文件的

  • 我有一个来自不同位置的文件列表。我使用以下代码创建了一个zip文件,该代码可以正常工作。但是,当我尝试在Windows中使用Extract All解压文件时,无法找到任何字节,但是如果我使用Windows资源管理器双击zip文件本身,我可以看到文件,并且可以打开单个文件并包含正确的数据

  • 问题内容: 我正在尝试解压缩一些zip文件,它的大小约为65兆。下面的代码段: 此方法实际上将文件解压缩: 那个执行者/未来的东西只是为了确保我正确地做。在类Finder中调用此方法,该类在目录中查找zip文件并尝试将其解压缩。它基于此代码http://docs.oracle.com/javase/tutorial/essential/io/walk.html 具体来说: 现在的问题。真的很有趣。

  • 我正在尝试解压文件使用Java,它正在编译没有任何错误。当我从工具中调用它,并给出文件的绝对目标路径和源路径时,例如:source:d:\data\test.zip destination:d:\data\op\ 我收到了类似访问被拒绝的错误(我有系统的管理访问权限) 堆栈跟踪: 正在提取:测试/新文本文档-复制(2).txt java.io.FileNotFoundException:d:\da