import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.util.zip.ZipInputStream;
/**
* 解压缩一个压缩文件中包含多个文件的情况
* */
public class ZipFileDemo3{
public static void main(String[] args) throws IOException{
File file = new File("d:" + File.separator + "zipFile.zip");
File outFile = null;
ZipFile zipFile = new ZipFile(file);
ZipInputStream zipInput = new ZipInputStream(new FileInputStream(file));
ZipEntry entry = null;
InputStream input = null;
OutputStream output = null;
while((entry = zipInput.getNextEntry()) != null){
System.out.println("解压缩" + entry.getName() + "文件");
outFile = new File("d:" + File.separator + entry.getName());
if(!outFile.getParentFile().exists()){
outFile.getParentFile().mkdir();
}
if(!outFile.exists()){
outFile.createNewFile();
}
input = zipFile.getInputStream(entry);
output = new FileOutputStream(outFile);
int temp = 0;
while((temp = input.read()) != -1){
output.write(temp);
}
input.close();
output.close();
}
}
}
分享到:
相关推荐
本文将详细讲解如何使用Java实现将多目录多层级的文件打成ZIP包,以及如何解压这些ZIP包。我们将主要关注`FileUtils.java`这个类,以及依赖的`commons-compress-1.1.jar`库。 `commons-compress-1.1.jar`是Apache ...
### JAVA解压ZIP多层目录文件(需ant.jar) #### 概述 本文将详细介绍一个Java方法,该方法用于解压包含多层目录结构的ZIP文件,并能够支持中文文件名。这种方法利用了Apache Ant库中的`org.apache.tools.zip....
在Java编程环境中,批量解压带密码...总的来说,Java批量解压带密码的RAR或ZIP文件涉及了文件流操作、压缩格式理解、第三方库的使用以及版权保护等多个知识点。通过合理运用这些知识,可以构建出高效、安全的解压工具。
例如,你可以创建一个Servlet,通过`HttpServletRequest`的`Part`接口来处理单个文件或多个文件的上传。下面是一个简单的例子: ```java @PostMapping("/upload") public String handleFileUpload(@RequestParam(...
- `zip`方法用于压缩多个文件或目录。它接受一个文件路径列表和输出ZIP文件名作为参数。首先创建一个`ZipOutputStream`,然后遍历所有文件路径,调用`zipFile`方法进行递归压缩。 - `zipFile`方法负责实际的文件...
在Java编程环境中,处理文件的压缩与解压是常见的任务,尤其在数据传输或存储时。本篇文章将详细探讨如何使用Java内置的IO流来实现文件夹的zip压缩以及zip压缩包的解压,无需依赖其他的第三方库如Apache Commons IO...
Java无需解压直接读取Zip文件和文件内容是Java语言中的一种常见操作,通过使用java.util.zip包中的ZipFile、ZipInputStream和ZipEntry类,我们可以轻松地读取Zip文件和文件内容。下面,我们将详细介绍如何使用Java...
本文将深入探讨如何使用Java来获取ZIP文件的名称以及如何高效地解压缩这些文件,特别是通过多线程来提高性能。 首先,我们需要引入Java的内置库`java.util.zip`,它提供了处理ZIP文件的类和接口。主要使用的类有`...
### Java 解压 Linux 上的 GZ ...无论是单个文件还是包含多个成员的压缩包,都可以使用 Java 语言提供的库轻松实现解压操作。这对于开发者来说是一个非常实用的功能,特别是在处理大量数据或构建自动化工具时尤其如此。
4. **解压过程**:解压时,我们需要创建一个`ZipInputStream`,然后逐个读取ZIP文件中的`ZipEntry`。在读取每个条目之前,我们需要使用正确密码设置`ZipInputStream`。然后,我们可以创建一个输出流,将解压的条目...
zip解压缩文件文件夹都可以,代码清晰,注释多。非常容易看懂
### JAVA 从压缩包中提取文件 #### 一、项目简介 本项目旨在演示如何使用Java编程语言从ZIP格式的压缩文件中提取文件并显示其名称。ZIP是一种广泛使用的文件压缩与存档格式,常用于数据备份和网络传输中。在实际...
`7z解压.txt`文件可能是对解压过程的进一步说明或注意事项,可能包括错误处理、性能优化、多线程解压等信息。实际使用时,你可以根据具体需求进行调整,例如增加日志记录、异常处理、进度显示等功能。 总的来说,...
在Java编程环境中,解压不同类型的压缩文件,如RAR5、Zip和7z,是一项常见的任务。为了实现这一功能,我们需要使用特定的库,因为...如果你正在构建一个Java项目来实现上述解压功能,这些文件可能就是项目的组成部分。
本篇文章将深入探讨如何使用纯Java实现这一功能,特别关注如何解压和压缩单个或多个文件以及整个文件夹。我们将涵盖核心的Java API,如`java.util.zip`包中的类,以及实际的代码示例。 首先,我们需要了解`java....
java压缩解压文件
总结来说,Java中处理RAR文件的递归解压需要利用第三方库,如Apache Commons Compress,通过读取每个条目并根据其类型创建对应的目录或文件。在编写这样的工具时,要考虑到各种可能的情况,并提供适当的错误处理和...
在Java编程环境中,FTP(File Transfer Protocol)是一个用于在计算机之间传输文件的标准协议。通过Java实现FTP批量下载文件以及解压的功能,可以极大地提高工作效率,特别是在处理大量数据时。以下是一份详细的步骤...
在Java编程环境中,处理RAR压缩包并对其进行解压是一个常见的任务,特别是在自动化脚本或数据迁移等场景下。本文将详细介绍如何使用Java实现这个功能,特别是处理带密码保护的RAR文件,同时支持中文文件名,并能在...
4. **动态CDS**:Class Data Sharing (CDS) 功能的扩展,使得多个JVM实例可以共享类数据,提升启动速度。 5. **ZGC**:一个低延迟的垃圾收集器,尤其适合大内存应用,可以减少应用程序暂停时间。 此外,Java 11还...