java实现zip与unzip
压缩文件
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
public class Zip {
static final int BUFFER = 2048 ;
public static void main(String argv[]) {
try {
BufferedInputStream origin = null ;
FileOutputStream dest = new FileOutputStream( " E://test//myfiles.zip " );
ZipOutputStream out = new ZipOutputStream( new BufferedOutputStream(
dest));
byte data[] = new byte [BUFFER];
File f = new File( " e://test//a// " );
File files[] = f.listFiles();
for ( int i = 0 ; i < files.length; i ++ ) {
FileInputStream fi = new FileInputStream(files[i]);
origin = new BufferedInputStream(fi, BUFFER);
ZipEntry entry = new ZipEntry(files[i].getName());
out.putNextEntry(entry);
int count;
while ((count = origin.read(data, 0 , BUFFER)) != - 1 ) {
out.write(data, 0 , count);
}
origin.close();
}
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
解压缩
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
public class UnZip {
static final int BUFFER = 2048 ;
public static void main(String argv[]) {
try {
String fileName = " E://test//myfiles.zip " ;
String filePath = " E://test// " ;
ZipFile zipFile = new ZipFile(fileName);
Enumeration emu = zipFile.entries();
int i = 0 ;
while (emu.hasMoreElements()) {
ZipEntry entry = (ZipEntry)emu.nextElement();
// 会把目录作为一个file读出一次,所以只建立目录就可以,之下的文件还会被迭代到。
if (entry.isDirectory())
{
new File(filePath + entry.getName()).mkdirs();
continue ;
}
BufferedInputStream bis = new BufferedInputStream(zipFile.getInputStream(entry));
File file = new File(filePath + entry.getName());
// 加入这个的原因是zipfile读取文件是随机读取的,这就造成可能先读取一个文件
// 而这个文件所在的目录还没有出现过,所以要建出目录来。
File parent = file.getParentFile();
if (parent != null && ( ! parent.exists())) {
parent.mkdirs();
}
FileOutputStream fos = new FileOutputStream(file);
BufferedOutputStream bos = new BufferedOutputStream(fos,BUFFER);
int count;
byte data[] = new byte [BUFFER];
while ((count = bis.read(data, 0 , BUFFER)) != - 1 )
{
bos.write(data, 0 , count);
}
bos.flush();
bos.close();
bis.close();
}
zipFile.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
java实现zip与unzip相关推荐
- java中使用unzip_java实现zip与unzip
java实现zip与unzip jdk提供了Zip相关的类方便的实现压缩和解压缩.使用方法很简单.下边分别是压缩和解压缩的简单事例 1,压缩的 import java.io.BufferedInput ...
- zip和unzip上的Java要点
压缩是编写文件时可以在我们的代码中发出的主要动作之一. 因此,我发现在zip和unzip上必不可少的简单Java代码段,并且必须易于访问. 要点是纯Java语言,并以zip格式存储两个文件. 完成后, ...
- Java zip and unzip demo
目录结构如下: import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import ...
- java unzip_Java zip压缩与unzip解压
这里主要使用java.util.zip.*来实现zip和unzip: zip压缩public static void zip(String[] files, String zipFile) throw ...
- Java 的zip压缩和解压缩
Java 的zip压缩和解压缩 好久没有来这写东西了,今天中秋节,有个东西想拿出来分享,一来是工作中遇到的问题,一来是和csdn问候一下,下面就分享一个Java中的zip压缩技术,代码实现比较简单,代 ...
- Java实现Zip文件解压
2019独角兽企业重金招聘Python工程师标准>>> ##1. 两种java实现zip文件解压方式 使用JDK的原生类java.util.zip,上代码: import java. ...
- java zip文件操作,java 关于 zip 文件 的 基本操作
这里用的是appache的包 为了防止文件中文名乱码问题 java 操作 .zip 文件 压缩文件 解压文件 删除文件夹等 package com.gaeainfo.toponymbase.uti ...
- zip4j -- Java处理zip压缩文件
ZIP4J,作为解决了我的问题的终极解决方案,本来一开始在搜索引擎上就看到了它的踪迹,但因天朝的网络环境问题,zip4j的官网一直无法访问,最终使我多走了好多冤枉路,期间试过JDK的zip包,试过Ap ...
- java zip追加_基于Java向zip压缩包追加文件
这篇文章主要介绍了基于Java向zip压缩包追加文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 有个需求,从某个接口下载的一个zip压缩包,往里 ...
最新文章
- 一个高速lvs-dr替代系统设计 -- 基于dpdk的高性能负载均衡器
- 在(CListView)列表视图中添加右键菜单的方法
- ID3 Algorithm for Decision Trees
- 游戏设计模式思考:“穿越火线”中的“策略模式”
- 进程间通信(匿名管道)
- java的整型_java 整型
- java 实现内存数据表_数据结构 Java中的内存
- 于无声处 启明星辰吹响工控安全号角
- 中间件和Django缓存
- 吴恩达神经网络和深度学习-学习笔记-32-卷积神经网络示例
- 【学习笔记】Creo如何创建钣金件(利用骨架)
- 移动端开发框架mui介绍
- html2canvas黑背景,解决canvas转base64/jpeg时透明区域变成黑色背景的方法
- 深度卷积神经网络架构:从基本组件到结构创新
- POI动态导出多层表头的EXCEL文件
- 常规配置中的CAN模块操作
- Android 图像混合技术
- 怎么查看服务器的性能,查看服务器进程性能查看
- HTTP Authentication之Bearer认证
- ES6-正则的扩展-u、y修饰符
热门文章
- 自学python需要多长时间-Python学习步骤如何安排?多长时间可以学会精通呢?
- python画圆简单代码-python实现画圆功能
- 如何使用python批量下载-使用 Python + Selenium 批量下载素材
- 下面不属于python第三方库的安装方法的是-Python第三方库安装和卸载
- python面试-10个Python面试常问的问题(小结)
- python基础代码-python基础,python基础代码大全
- python3.7.2教程-centos7系统下python2与python3共存
- python判断是否为类的实例,是否为子类
- LeetCode Rectangle Area
- 用shell批量修改文件名