文件压缩工具类

import java.io.File;

import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.taskdefs.Zip;
import org.apache.tools.ant.types.FileSet;

/**
 * @Desc:ZIP压缩
 * @Date:2016-8-11 上午9:57:49
 * destCompressAlfterFileName C:/tc_excel/21.zip
 * srcPathName C:/tc_excel/
 * srcFileName EX-CHN.xls
 * 效果是 把EX-CHN.xls压缩成21.zip 并把EX-CHN.xls文件删除
 */
public class ZipCompressorByAnt {


    public static int compress(String destCompressAlfterFileName,String srcPathName,String srcFileName) {
        try {
            File srcdir = new File(srcPathName);
            if (!srcdir.exists()) return -1; /** 文件目录不存在 */

            Project prj = new Project();
            Zip zip = new Zip();
            zip.setProject(prj);
            zip.setDestFile(new File(destCompressAlfterFileName));
            FileSet fileSet = new FileSet();
            fileSet.setProject(prj);
            //fileSet.setDir(srcdir);
            fileSet.setFile(new File(srcPathName + srcFileName));
            // fileSet.setIncludes("**/*.java"); 包括哪些文件或文件夹
            // eg:zip.setIncludes("*.java");
            // fileSet.setExcludes(...); 排除哪些文件或文件夹
            zip.addFileset(fileSet);

            zip.execute();
            
            //删除源文件
            File file = new File(srcPathName + srcFileName);
            if(file.exists()) file.delete();
            
            return 0; /** 压缩成功 */
        } catch (BuildException e) {
            e.printStackTrace();
            return 1; /** 压缩异常 */
        }
    }
    public static void main(String[] args) {
        ZipCompressorByAnt.compress("C:/tc_excel/21.zip", "C:/tc_excel/","EX-CHN.xls");  
    }
}
原文地址:https://www.cnblogs.com/kasher/p/7365166.html