时间:2021-05-19
通过java api实现zip压缩格式的压缩与解压缩
复制代码 代码如下:
package com.hongyuan.test;
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.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.util.zip.ZipOutputStream;
public class ZipTest {
public static void main(String[] args) throws IOException {
unZip("bootstrap.zip");
zip("bootstrap_01.zip","bootstrap/css/bootstrap.css","bootstrap/css/bootstrap.min.css");
}
public static void unZip(String fileName) throws IOException{
//获取压缩文件对象
ZipFile zf = new ZipFile(fileName);
//遍历文件条目
Enumeration<? extends ZipEntry> items = zf.entries();
while (items.hasMoreElements()) {
ZipEntry item = items.nextElement();
String filePath = zf.getName().substring(0,
zf.getName().lastIndexOf("."))
+ File.separator + item.getName();
File fileDir = new File(filePath.substring(0,
filePath.lastIndexOf("/")));
if (!fileDir.exists()) {
fileDir.mkdirs();
}
//从流中读取文件
OutputStream out = new FileOutputStream(filePath);
InputStream in = zf.getInputStream(item);
byte[] temp = new byte[1024];
int len = 0;
while ((len = in.read(temp)) > 0) {
out.write(temp, 0, len);
}
in.close();
out.close();
}
zf.close();
}
public static void zip(String fileName,String... files) throws IOException{
//构造压缩文件输出流
ZipOutputStream zos=new ZipOutputStream(new FileOutputStream(fileName));
for(int i=0,size=files.length;i<size;i++){
//创建压缩实体
ZipEntry entry=new ZipEntry(files[i].substring(files[i].lastIndexOf("/")+1));
zos.putNextEntry(entry);
//将文件内容输出到压缩流中
InputStream is=new FileInputStream(files[i]);
int count=0;
byte[] buffer=new byte[1024];
while((count=is.read(buffer))>=0){
zos.write(buffer, 0, count);
}
zos.flush();
zos.closeEntry();
is.close();
}
}
}
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Android实现zip文件压缩及解压缩的方法。分享给大家供大家参考。具体如下:DirTraversal.java如下:?123456789101
前言最近的项目中需要用到解压缩包的功能,客户给出的压缩包的格式主要是rar和zip,因此就打算使用java调用7zip的命令行进行解压文件,本文主要记录一下实现
7zip支持格式: 压缩/解压缩:7z,XZ,BZIP2,GZIP,TAR,ZIPandWIM 仅解压缩:ARJ,CAB,CHM,CPIO,CramFS
(四)Tomcat 1、用WinZIP等解压缩软件把tomcat.zip解压缩到一个目录下,我把它解压缩到C:\,它会自动 创建tomcat子目录
Java解压缩zip-多个文件(包括文件夹),具体如下:对多个文件和文件夹进行压缩,对复杂的文件目录进行解压。压缩方法使用的是可变参数,可以压缩1到多个文件..