package com.yd.common;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
public class ZipOp {
/**
* 实现目录内内容压缩
* @param zipFile压缩文件的保存路径
* @param filepath压缩文件目录
*/
public void zip(String zipFile,String filepath) {
try {
ZipOutputStream zos = new ZipOutputStream(new FileOutputStream(zipFile));
FileInputStream fis = null;
ZipEntry ze = null;
List<String> fileList = allFile(filepath);
int length = 0;
byte[] b = new byte[1024];
for(int i = 0; i < fileList.size(); i ++){
//System.out.println("filePath: " + fileList.get(i));
File file = new File(fileList.get(i));
fis = new FileInputStream(file);
ze = new ZipEntry(file.getName());
zos.putNextEntry(ze);
while((length = fis.read(b)) != -1){
zos.write(b, 0, length);
}
}
fis.close();
zos.close();
System.out.println("done!");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 遍历目录结构,返回文件所对应的文件结构【只是多级遍历】
*/
private List<String> allFile(String path){
List<String> filePaths = new ArrayList<String>();
File file = new File(path);
if(file.isDirectory()){
String[] subFilePaths = file.list();
for(int i = 0; i < subFilePaths.length; i ++){
filePaths.addAll(allFile(path + subFilePaths[i]));//递归
}
}else{
filePaths.add(path);
}
return filePaths;
}
}
分享到:
相关推荐
java 实现压缩与解压缩ZIP .docjava 实现压缩与解压缩ZIP .docjava 实现压缩与解压缩ZIP .docjava 实现压缩与解压缩ZIP .doc
JAVA实现目录及文件的zip压缩和解压
java实现的解压与压缩的类 其中有zip和rar类型的 还包括了所需的架包
java实现zip压缩功能,java实现zip压缩功能,java实现zip压缩功能,java实现zip压缩功能,java实现zip压缩功能,java实现zip压缩功能,java实现zip压缩功能,java实现zip压缩功能,java实现zip压缩功能,java实现zip...
包含了使用的jar包,以及一个Java类,实现了使用Java对多目录多层级的文件进行打包,以及对ZIP包进行解压缩的操作。
java实现压缩和压缩zip格式文件的功能,网络上看到的,觉得不错上传出来,供大家一起共同分享学习。
java 实现Excel压缩成Zip导出.docx
Java实现的带密码压缩与解压zip文件源码,可将多个文件使用不同的密码压进同一个zip文件;可以解压带密码的zip文件(store压缩模式)
java压缩文件成zip实现无乱码 内置类与jar包
使用java的zip压缩库 对文件和文件夹实现压缩
使用 Java 语言实现并封装的创建 ZIP 格式的压缩文件并解压到指定目录和解压 ZIP 文件到指定目录的工具类。
NULL 博文链接:https://zhenyong.iteye.com/blog/1576148
关于Java实现文件的zip的解压缩 文本文档 虽然不多
JAVA文件压缩与解压缩实践,java解压缩zip文件,Java源码
java 解压缩zip文件 java 解压缩zip文件 java 解压缩zip文件
java 实现指定目录下的文件打包zip格式 并指定存放zip包
Java实现压缩与解压缩ZIP import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream;...
Java实现压缩与解压缩功能源码,简单易用。直接嵌套在你需要的地方即可。
Java把文件压缩成zip,粘贴在项目中即可使用
zip 压缩 文件 Java zip 压缩 文件 Java zip 压缩 文件 Java zip 压缩 文件 Java