Java—将文件夹压缩为zip文件

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipOutputStream;
/**
 * 
 * @author hwt
 *
 */
public class TestDir {
    /**
     * 将文件夹以及其下的文件压缩为文件
     * @param args
     * @throws IOException
     */
    public static void main(String[] args) throws IOException {
//源文件夹 File file
= new File("D:/ziptest");
     //目的文件 ZipOutputStream zos
= new ZipOutputStream(new FileOutputStream("D:/test.zip")); if (file.isDirectory()) { File[] files = file.listFiles(); for (int i=0; i<files.length; i++) { BufferedInputStream bis = new BufferedInputStream(new FileInputStream(files[i])); zos.putNextEntry(new ZipEntry(file.getName() + File.separator + files[i].getName())); while (true) { byte[] b = new byte[100]; int len = bis.read(b); if (len == -1) break; zos.write(b, 0, len); } bis.close(); } } zos.close(); } }

 

posted @ 2018-01-12 14:11  smart_hwt  阅读(339)  评论(0编辑  收藏  举报