Java解压zip文件(文本)压缩包
2017-05-29 00:00
295 查看
说明:由于我们的日志收集到指定服务器上,会按天压缩成一个zip格式的压缩包,但是有时候需要对这些日志进行处理,人工解压在处理,显示对于大量的日志处理是不行的(效率太低),所以还是要采用程序自动解压效率比较高些。现在就写一个简单例子作为以后参考使用。
一、解压代码:
package ziptofile;
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.ZipInputStream;
public class ZipToFile {
//zipPath:压缩包名称所在目录 outFilePath:解压后的文件存放位置
public void zipToFile(String zipPath,String outFilePath) throws Exception{
//压缩包所在路径
FileInputStream fis = new FileInputStream(zipPath);
ZipInputStream zis = new ZipInputStream(fis);
BufferedInputStream bis = new BufferedInputStream(zis);
ZipEntry zipEntry=null;
while((zipEntry=zis.getNextEntry())!=null && !zipEntry.isDirectory()){
File fileOutPath = new File(outFilePath,zipEntry.getName());
if(!fileOutPath.exists()){
//传进来的路径是存在的,但待解压的文件夹及其待解压文件下的文件夹都是在指定输出目录下没有的,这些目录都是需要创建的,所有有多层目录时,使用mkdirs()方法,而不是mkidr()
(new File(fileOutPath.getParent())).mkdirs();
}
//读取压缩包里面的内容
FileOutputStream fos = new FileOutputStream(fileOutPath);
BufferedOutputStream bos = new BufferedOutputStream(fos);
int reads=0;
while((reads=bis.read())!=-1){
bos.write(reads);
bos.flush();
}
fos.close();
bos.close();
}
bis.close();
zis.close();
System.out.println("解压成功...");
}
}
二、测试代码:
package ziptofile;
public class TestZipToFile {
public static void main(String[] args) throws Exception {
ZipToFile zipToFile = new ZipToFile();
//待解压zip包名称所在路径
String zipPath="D://test//zipRes//002.zip";
//解压出来的结果存放的路径
String outFilePath="D://test//zipRes";
long startTime=System.currentTimeMillis();
zipToFile.zipToFile(zipPath, outFilePath);
//开始进行解压
long endTime=System.currentTimeMillis();
System.out.println("耗费时间: "+(endTime-startTime)+" ms");
}
}
一、解压代码:
package ziptofile;
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.ZipInputStream;
public class ZipToFile {
//zipPath:压缩包名称所在目录 outFilePath:解压后的文件存放位置
public void zipToFile(String zipPath,String outFilePath) throws Exception{
//压缩包所在路径
FileInputStream fis = new FileInputStream(zipPath);
ZipInputStream zis = new ZipInputStream(fis);
BufferedInputStream bis = new BufferedInputStream(zis);
ZipEntry zipEntry=null;
while((zipEntry=zis.getNextEntry())!=null && !zipEntry.isDirectory()){
File fileOutPath = new File(outFilePath,zipEntry.getName());
if(!fileOutPath.exists()){
//传进来的路径是存在的,但待解压的文件夹及其待解压文件下的文件夹都是在指定输出目录下没有的,这些目录都是需要创建的,所有有多层目录时,使用mkdirs()方法,而不是mkidr()
(new File(fileOutPath.getParent())).mkdirs();
}
//读取压缩包里面的内容
FileOutputStream fos = new FileOutputStream(fileOutPath);
BufferedOutputStream bos = new BufferedOutputStream(fos);
int reads=0;
while((reads=bis.read())!=-1){
bos.write(reads);
bos.flush();
}
fos.close();
bos.close();
}
bis.close();
zis.close();
System.out.println("解压成功...");
}
}
二、测试代码:
package ziptofile;
public class TestZipToFile {
public static void main(String[] args) throws Exception {
ZipToFile zipToFile = new ZipToFile();
//待解压zip包名称所在路径
String zipPath="D://test//zipRes//002.zip";
//解压出来的结果存放的路径
String outFilePath="D://test//zipRes";
long startTime=System.currentTimeMillis();
zipToFile.zipToFile(zipPath, outFilePath);
//开始进行解压
long endTime=System.currentTimeMillis();
System.out.println("耗费时间: "+(endTime-startTime)+" ms");
}
}
相关文章推荐
- java zip文件的压缩与解压
- 通过Java生成加密压缩文件(支持AES压缩和解压zip文件)
- Java 基于java.util.zip类压缩解压Zip文件
- java解压缩zip文件,java创建zip文件,java压缩文件,java解压文件,用到ant.jar解决汉字乱码
- Java 基于java.util.zip类压缩解压Zip文件
- Java解压和压缩带密码的zip文件
- java解压缩zip文件,java创建zip文件,java压缩文件,java解压文件,用到ant.jar解决汉字乱码
- java解压缩zip文件,java创建zip文件,java压缩文件,java解压文件,用到ant.jar解决汉字乱码
- JAVA读取zip文件 JAVA读取压缩文件 解压zip里面的指定格式文件
- java应用压缩、解压zip文件
- java解压缩zip文件,java创建zip文件,java压缩文件,java解压文件,用到ant.jar解决汉字乱码
- java-在Java中操作Zip文件,压缩/解压
- java压缩解压zip文件,中文乱码还需要ant.jar包
- Java 基于java.util.zip类压缩解压Zip文件
- java-在Java中操作Zip文件,压缩/解压
- java对zip文件的解压处理直接访问压缩文件
- java 压缩解压zip文件--使用ant支持中文
- java解压缩zip文件,java创建zip文件,java压缩文件,java解压文件,用到ant.jar解决汉字乱码
- Java 解压和压缩密码zip文件
- Java 基于java.util.zip类压缩解压Zip文件