package com.bill99.cps.dpm.util;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
/**
* 解压文件工具类
* @author: nick.ma
* @see
*/
public class UnzipFile {
public static void unzipFile(String targetPath, InputStream in) {
try {
ZipInputStream zis = new ZipInputStream(in);
ZipEntry entry = null;
System.out.println("start unzip ...");
while ((entry = zis.getNextEntry()) != null) {
String zipPath = entry.getName();
try {
if (entry.isDirectory()) {
File zipFolder = new File(targetPath + File.separator + zipPath);
if (!zipFolder.exists()) {
zipFolder.mkdirs();
}
} else {
File file = new File(targetPath + File.separator + zipPath);
if (!file.exists()) {
File pathDir = file.getParentFile();
pathDir.mkdirs();
file.createNewFile();
}
FileOutputStream fos = new FileOutputStream(file);
int bread;
while ((bread = zis.read()) != -1) {
fos.write(bread);
}
fos.close();
}
System.out.println("unzip successful :" + zipPath);
} catch (Exception e) {
System.out.println("unzip " + zipPath + "fail");
continue;
}
}
zis.close();
in.close();
System.out.println("end unzip");
} catch (Exception e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
Java操作zip压缩格式的开源项目,功能强大而且使用方便,能完全满足Java操作Zip压缩文件,官方网址为:http://www.lingala.net/zip4j/ 可以下载到jar包、源码和示例,好像没有提供API文档。 不过需要使用代理访问...
Java操作Zip文件主要涉及到对文件和目录的压缩与解压缩,以及在必要时对压缩文件进行加密处理。这里我们重点讨论使用两个库:`zip4j`和`Apache Ant`来实现这些功能。 1. **zip4j库**:`zip4j-1.3.2.jar`是一个用...
在这种情况下,第三方库如`Ionic.Zip`提供了强大的功能,使得这些操作变得简单易行。`Ionic.Zip`是一个免费的、开源的.NET库,允许开发者以编程方式处理ZIP文件,而无需依赖系统自带的ZIP支持。 ### 1. 创建ZIP ...
Java操作zip压缩格式的开源项目,功能强大而且使用方便,能完全满足Java操作Zip压缩文件,官方网址为:http://www.lingala.net/zip4j/ 可以下载到jar包、源码和示例,好像没有提供API文档。 不过需要使用代理访问...
Java操作ZIP文件,特别是涉及到加解密码的环节,是一项常见的任务。在Java中,我们可以使用标准的`java.util.zip`库来处理基本的ZIP文件操作,但若涉及到加密和解密,就需要借助第三方库,例如`Zip4j`。本文将深入...
本文将深入探讨如何使用AS3(ActionScript 3)来操作ZIP文件,以便在Flex项目中实现文件的压缩和解压缩。AS3是Adobe Flash Player和Adobe AIR应用程序的主要编程语言,它基于ECMAScript规范,提供了更强大的面向对象...
在本主题中,我们将深入探讨如何使用开源库ICSharpCode SharpZipLib来操作ZIP压缩包。这个库为C#提供了强大的ZIP文件处理功能,无需依赖系统自带的API,可以在各种.NET平台上工作。 首先,让我们了解什么是...
winszipaes是Java语言下的ZIP文件操作接口,支持密码,但源代码不支持中文,该jar包对源码作了一点修改,使其支持中文,修改信息可以参照我的博客http://blog.csdn.net/zhangyihui1986/article/details/7724229或者...
以上介绍了在DOS环境下使用`zip`和`winrar`命令进行RAR和ZIP压缩文件的创建、添加、更新、设置属性、解压以及查看信息等操作的方法。通过这些命令,可以方便地管理和处理各种文件压缩任务。熟练掌握这些命令,可以...
学习和理解`zip_utils_src`可以帮助开发者掌握如何在C++中直接操作ZIP文件,而无需依赖外部工具。这对于开发文件打包、备份、传输等应用非常有用。同时,通过阅读源码,可以深入理解ZIP文件格式的工作原理,以及C++...
在操作ZIP文件时,应适当地处理可能出现的错误,如文件不存在、权限不足等。使用`try-catch`结构捕获异常,提供有意义的错误信息。 通过这个类库,开发者能够更加高效和灵活地处理ZIP文件操作,无论是创建、读取...
程序员在使用这个库时,需要包含这些头文件,然后调用其中声明的函数来操作ZIP文件。这些函数可能包括`unzipOpen`、`unzipClose`、`zipOpen`、`zipClose`等,用于打开和关闭ZIP文件,以及`unzipFileRead`、`...
java 操作 zip压缩,解压缩 java 操作 zip压缩,解压缩 java 操作 zip压缩,解压缩 java 操作 zip压缩,解压缩 java 操作 zip压缩,解压缩
这个模块包含了一系列方法,如`ZipFile`类,用于创建、打开和操作ZIP文件。我们可以使用`ZipFile`类的构造函数来实例化一个对象,传入ZIP文件的路径或者文件对象,然后调用其方法执行所需操作。 例如,要创建一个新...
以minizip为例,我们可以通过以下步骤使用C语言操作ZIP文件: 1. **打开ZIP文件**:使用`unzOpen`函数打开ZIP文件,返回一个unzFile类型的句柄。 2. **遍历ZIP内文件**:通过`unzGoToFirstFile`跳到第一个文件,...
php真正的ZIP文件操作类,php将文件夹打包成zip文件,分析了php操作zip文件的技巧,有兴趣的朋友可以引用参考,或者朋友们有更好的zip类,可以上传到我们PHP中文网与我们一起学习分享。
Python的标准库提供了`zipfile`模块,它提供了丰富的API来操作ZIP文件。解压一个ZIP文件的基本步骤如下: 1. 导入`zipfile`模块: ```python import zipfile ``` 2. 打开ZIP文件,这里我们假设ZIP文件名为`archive...
此外,由于直接操作ZIP文件涉及到文件系统和压缩算法,因此在处理过程中可能需要考虑错误处理和异常管理。例如,在读取文件条目或解压缩数据时可能会遇到错误,比如文件损坏或数据格式不正确等。因此,在实际开发中...
在Flex开发中,ActionScript可以用来解析和操作Zip文件,以便在Flash应用程序中实现类似的功能。 标题"actionscript解析zip包"所涉及的知识点主要包括: 1. **ActionScript基础**:首先需要理解ActionScript的基本...