Java解压本地zip文件(zip4j)

简介: Java解压本地zip文件(zip4j)

前言


在成功将远程zip文件下载到本地后,如何将本地zip文件解压到本地指定目录就是接下来要解决的问题,将文件解压到本地指定目录后的心得与理解在此进行记录。

image.png

一、前提条件


image.png

二、实现过程


1. 使用对象


在这里我导入了专用于处理zip文件的依赖zip4j,zip4j官网:http://www.lingala.net/zip4j.html

image.png

Maven仓库地址https://mvnrepository.com/artifact/net.lingala.zip4j/zip4j

image.png

在这里我导入的版本是2.2.0

image.png

2. 实现思路


将要进行解压zip压缩文件抽象成ZipFile文件对象,并调用ZipFile本身的方法extractAll()方法将文件进行解压,此时将解压后的文件的存储位置作为extractAll()方法的参数。

image.png

3. 实现代码


/*** 将压缩文件的内容解压到本地指定目录中*/publicvoidunZipFile() throwsZipException {
// 创建zip文件对象ZipFilezipFile=newZipFile("文件路径\\XXXX.zip");
// 解压全部zip文件zipFile.extractAll("指定的目录");
// 输出解压结果System.out.println("文件解压成功!");
    }

通过Junit4进行测试是否可以将本地指定的压缩文件解压缩到指定目录中

四、运行结果


image.png

总结


将本地zip压缩文件解压到指定的本地目录功能到此就全部实现,基于zip4j的强大功能之下,解压文件没有了Java自带的zip文件操作的繁琐,功能强大,但使用起来却非常简单。在最后简单的总结一下zip的基本知识,zip4j默认采用UTF-8编码,所以它支持中文,同时也支持密码,并且还支持多种压缩算法。就像zip4j的作者在GitHub上说的那样:

它试图使处理 zip 文件/流变得更加容易。不再有带有输入流和输出流的笨重样板代码。

本次也只是简单的使用zip4j进行了解压文件,zip4j真正的强大之处仍然需要我去慢慢的探索,我很平凡,却始终相信自己不会简单,只要我想要,就会通过自己的努力去得到。羡慕别人不如自己拥有,现在的努力奋斗成就未来的自己!

image.png

相关文章
|
2月前
|
Java
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
92 9
|
2月前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
103 2
|
14天前
|
人工智能 自然语言处理 Java
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
FastExcel 是一款基于 Java 的高性能 Excel 处理工具,专注于优化大规模数据处理,提供简洁易用的 API 和流式操作能力,支持从 EasyExcel 无缝迁移。
74 9
FastExcel:开源的 JAVA 解析 Excel 工具,集成 AI 通过自然语言处理 Excel 文件,完全兼容 EasyExcel
|
1月前
|
Java
java实现从HDFS上下载文件及文件夹的功能,以流形式输出,便于用户自定义保存任何路径下
java实现从HDFS上下载文件及文件夹的功能,以流形式输出,便于用户自定义保存任何路径下
93 34
|
2月前
|
消息中间件 存储 Java
RocketMQ文件刷盘机制深度解析与Java模拟实现
【11月更文挑战第22天】在现代分布式系统中,消息队列(Message Queue, MQ)作为一种重要的中间件,扮演着连接不同服务、实现异步通信和消息解耦的关键角色。Apache RocketMQ作为一款高性能的分布式消息中间件,广泛应用于实时数据流处理、日志流处理等场景。为了保证消息的可靠性,RocketMQ引入了一种称为“刷盘”的机制,将消息从内存写入到磁盘中,确保消息持久化。本文将从底层原理、业务场景、概念、功能点等方面深入解析RocketMQ的文件刷盘机制,并使用Java模拟实现类似的功能。
48 3
|
2月前
|
Java 测试技术 Maven
Maven clean 提示文件 java.io.IOException
在使用Maven进行项目打包时,遇到了`Failed to delete`错误,尝试手动删除目标文件也失败,提示`java.io.IOException`。经过分析,发现问题是由于`sys-info.log`文件被其他进程占用。解决方法是关闭IDEA和相关Java进程,清理隐藏的Java进程后重新尝试Maven clean操作。最终问题得以解决。总结:遇到此类问题时,可以通过任务管理器清理相关进程或重启电脑来解决。
|
2月前
|
存储 缓存 安全
在 Java 编程中,创建临时文件用于存储临时数据或进行临时操作非常常见
在 Java 编程中,创建临时文件用于存储临时数据或进行临时操作非常常见。本文介绍了使用 `File.createTempFile` 方法和自定义创建临时文件的两种方式,详细探讨了它们的使用场景和注意事项,包括数据缓存、文件上传下载和日志记录等。强调了清理临时文件、确保文件名唯一性和合理设置文件权限的重要性。
186 2
|
Java
JAVA解压Zip格式文件的代码
JAVA解压Zip格式文件的代码
128 0
|
Java
JAVA解压Zip格式文件的代码
JAVA解压Zip格式文件的代码
158 0
|
Java
java 压缩包 遍历解压 zip 和 7z 指定格式文件
java 压缩包 遍历解压 zip 和 7z 指定格式文件
404 0