java zip files

来源:互联网 发布:恒扬数据市值 编辑:程序博客网 时间:2024/06/05 05:06
/**
 * 
 */
package com.geili.hanqw;


/**
 * @author hanqw
 * @since 2013-9-17 上午9:50:22
 */
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Arrays;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;


public class FileTool {
private static final int BUFFER = 1024;
public static void main(String[] args) throws IOException {
// 设置工作目录和文件后缀名
String fileSuffix = ".ZIP";
String rootDir = System.getProperty("user.dir");
File f = new File(rootDir + "/data");
zipFilesInPath("hanqw.zip", rootDir + File.separator + "data");
System.out.println("成功结束!");
}
public static void zipFilesInPath(final String zipFileName,
final String filePath) throws IOException {
final FileOutputStream dest = new FileOutputStream(zipFileName);
final ZipOutputStream out = new ZipOutputStream(
new BufferedOutputStream(dest));
try {


byte[] data = new byte[BUFFER];
final File folder = new File(filePath);
final List<String> files = Arrays.asList(folder.list());
for (String file : files) {
final FileInputStream fi = new FileInputStream(filePath
+ File.separator + file);
final BufferedInputStream origin = new BufferedInputStream(fi,
BUFFER);
out.putNextEntry(new ZipEntry(file));
int count;
while ((count = origin.read(data, 0, BUFFER)) != -1) {
out.write(data, 0, count);
}
origin.close();
fi.close();
}
} finally {
out.close();
dest.close();
}
}


}
原创粉丝点击