package com.woxiaoe.study.io;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.Adler32;
import java.util.zip.CheckedOutputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
/**
* 文件压缩
* @author 小e
*
* 2010-5-23 下午09:24:31
*/
public class FileCompress {
public static void compress(String dest,File...files){
FileOutputStream fos = null;
CheckedOutputStream cos = null;
ZipOutputStream zos = null;
BufferedOutputStream bos = null;
try {
fos = new FileOutputStream(dest);
cos = new CheckedOutputStream(fos, new Adler32());
zos = new ZipOutputStream(cos);
bos = new BufferedOutputStream(zos);
// org.apache.tools.zip setEncoding(...)
zos.setComment("文件压缩测试");
for(File file : files){
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file));
zos.putNextEntry(new ZipEntry(file.getName()));
int len;
byte[] buf = new byte[1024];
while((len = bis.read(buf)) != -1){
bos.write(buf, 0, len);
}
bis.close();
bos.flush();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
if(bos != null){
try {
bos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(zos != null){
try {
zos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(cos != null){
try {
cos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(fos != null){
try {
fos.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
分享到:
相关推荐
本资源"JAVA文件压缩与解压缩实践(源代码+论文)"提供了一个完整的实践教程,包括源代码和相关论文,帮助开发者深入理解这一主题。 一、压缩算法简介 文件压缩主要通过特定的算法减少文件大小,常见的压缩算法有ZIP...
java毕业设计——java文件压缩与解压缩实践设计与开发(源代码+论文).zip java毕业设计——java文件压缩与解压缩实践设计与开发(源代码+论文).zip java毕业设计——java文件压缩与解压缩实践设计与开发(源代码+论文)....
(Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业设计)JAVA文件压缩与解压缩实践(Java毕业...
JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件压缩与解压缩实践(源代码+论文) JAVA文件...
JAVA文件压缩与解压缩实践(源代码).zipJAVA文件压缩与解压缩实践(源代码).zipJAVA文件压缩与解压缩实践(源代码).zipJAVA文件压缩与解压缩实践(源代码).zipJAVA文件压缩与解压缩实践(源代码).zipJAVA文件压缩与解压缩...
JAVA文件压缩与解压缩实践(源代码+LW)JAVA文件压缩与解压缩实践(源代码+LW)JAVA文件压缩与解压缩实践(源代码+LW)JAVA文件压缩与解压缩实践(源代码+LW)JAVA文件压缩与解压缩实践(源代码+LW)JAVA文件压缩与解压缩实践...
JAVA文件压缩与解压缩实践(源代码+论文)JAVA文件压缩与解压缩实践(源代码+论文)JAVA文件压缩与解压缩实践(源代码+论文)JAVA文件压缩与解压缩实践(源代码+论文)JAVA文件压缩与解压缩实践(源代码+论文)JAVA文件压缩与...
Java文件压缩源码是Java开发中常见的需求,它允许开发者将多个文件或目录打包成一个压缩文件,方便存储和传输。在本例中,我们提到的实现方式是通过使用Apache Ant库中的`org.apache.tools.ant.taskdefs.Zip`类。...
javaweb毕业设计-JAVA文件压缩与解压缩实践(源代码+lw)(可做课程设计).rarjavaweb毕业设计-JAVA文件压缩与解压缩实践(源代码+lw)(可做课程设计).rarjavaweb毕业设计-JAVA文件压缩与解压缩实践(源代码+lw)(可做课程...
### 实现Java文件压缩与解压 #### 一、引言 在计算机科学领域,文件压缩与解压是一项非常实用的技术。它不仅能够减少文件占用的空间,提高存储效率,还能加速文件在网络中的传输速度。Java作为一种广泛使用的编程...
Java文件压缩是一个常见的任务,特别是在开发环境中,例如Web开发,我们经常需要对文件或文件夹进行打包和压缩以便传输或存储。以下是对`java文件压缩`这个主题的详细阐述: 在Java中,我们可以使用标准库中的`java...
Java文件压缩与解压缩实践是指利用Java编程语言实现对文件或文件夹进行压缩和解压缩操作。以下是该实践的描述: 技术概述: Java文件压缩与解压缩是指将一个或多个文件或文件夹打包成一个压缩文件,或者将压缩文件...
JAVA文件压缩与解压缩实践(源代码+lw).rarJAVA文件压缩与解压缩实践(源代码+lw).rarJAVA文件压缩与解压缩实践(源代码+lw).rarJAVA文件压缩与解压缩实践(源代码+lw).rarJAVA文件压缩与解压缩实践(源代码+lw).rarJAVA...