您的位置:首页 > 编程语言 > Java开发

如何使用java压缩文件夹成为zip包(最简单的方式 已测试)

2017-06-10 15:34 423 查看
import java.io.File;

import org.apache.tools.ant.Project;

import org.apache.tools.ant.taskdefs.Zip;

import org.apache.tools.ant.types.FileSet;

public class ZipCompressorByAnt {    

    

    private File zipFile;    

    

    /**

     * 压缩文件构造函数

     * @param pathName 最终压缩生成的压缩文件:目录+压缩文件名.zip

     */  

    public ZipCompressorByAnt(String finalFile) {    

        zipFile = new File(finalFile);    

    }    

        

    /**

     * 执行压缩操作

     * @param srcPathName 需要被压缩的文件/文件夹

     */  

    public void compressExe(String srcPathName) {  

        System.out.println("srcPathName="+srcPathName);

        

        File srcdir = new File(srcPathName);    

        if (!srcdir.exists()){  

            throw new RuntimeException(srcPathName + "不存在!");    

        }   

            

        Project prj = new Project();    

        Zip zip = new Zip();    

        zip.setProject(prj);    

        zip.setDestFile(zipFile);    

        FileSet fileSet = new FileSet();    

        fileSet.setProject(prj);    

        fileSet.setDir(srcdir);    

        //fileSet.setIncludes("**/*.java"); //包括哪些文件或文件夹 eg:zip.setIncludes("*.java");    

        //fileSet.setExcludes(...); //排除哪些文件或文件夹    

        zip.addFileset(fileSet);    

        zip.execute();    

    }    
}

public class TestZip {

    public static void main(String[] args) {   

          

        ZipCompressorByAnt zca = new ZipCompressorByAnt("E:\\test1.zip ");  

        zca.compressExe("E:\\test1");  

    }  

}

/*如果 出现ant 的 52  51 50 等版本问题 可以去找对应的ant-1.8.2.jar     我开始用的ant-1.10.1.jar 就是这个包版本高了  一直报verson 52 版本问题*/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息