import java.io.File;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.taskdefs.Expand;
import org.apache.tools.ant.taskdefs.Zip;
import org.apache.tools.ant.types.FileSet;
public class Zipper {
public final static String encoding = "GBK";
// 压缩
public static void zip(String srcPathname, String zipFilepath)
throws BuildException, RuntimeException {
File file = new File(srcPathname);
if (!file.exists())
throw new RuntimeException("source file or directory "
+ srcPathname + " does not exist.");
Project proj = new Project();
FileSet fileSet = new FileSet();
fileSet.setProject(proj);
// 判断是目录还是文件
if (file.isDirectory()) {
fileSet.setDir(file);
// ant中include/exclude规则在此都可以使用
// 比如:
// fileSet.setExcludes("**/*.txt");
// fileSet.setIncludes("**/*.xls");
} else {
fileSet.setFile(file);
}
Zip zip = new Zip();
zip.setProject(proj);
zip.setDestFile(new File(zipFilepath));
zip.addFileset(fileSet);
zip.setEncoding(encoding);
zip.execute();
}
// 解压缩
public static void unzip(String zipFilepath, String destDir)
throws BuildException, RuntimeException {
if (!new File(zipFilepath).exists())
throw new RuntimeException("zip file " + zipFilepath
+ " does not exist.");
Project proj = new Project();
Expand expand = new Expand();
expand.setProject(proj);
expand.setTaskType("unzip");
expand.setTaskName("unzip");
expand.setEncoding(encoding);
expand.setSrc(new File(zipFilepath));
expand.setDest(new File(destDir));
expand.execute();
}
public static void main(String []args){
unzip("D:\\123.zip","D:\\123");
zip("D:\\upload","D:\\upload.zip");
}
}
分享到:
相关推荐
以下是一个简单的示例,展示了如何使用Ant压缩一组文件到一个ZIP文件: ```xml **/*"/> ``` 在这个例子中,`<zip>`任务创建了一个名为“output.zip”的ZIP文件,`<fileset>`定义了要被压缩的文件或...
标题中的“用ant来解压文件”指的是使用Apache Ant这一开源构建工具来处理压缩文件,如.zip或.tar.gz等。Apache Ant是Java生态系统中的一个重要组件,它基于XML来定义项目构建过程,包括编译、打包、测试等任务。在...
在Java环境中,有一种高效且强大的工具可以帮助我们进行压缩和解压缩操作,那就是Apache Ant的ant.jar库。Ant是一个基于Java的构建工具,它提供了一系列的任务,包括处理文件、编译代码、打包应用程序等,其中就包含...
了解这些基础知识后,我们可以更有效地利用7-Zip和Ant处理文件压缩和解压,特别是在大型项目中,自动化这些过程可以显著提高工作效率。同时,理解XML配置文件如build.xml的内容,可以帮助我们定制化构建流程,满足...
可以解决中文的的文件,比java.util.zip自带的要好
总结来说,"java Zip压缩解压"涉及了Java标准库中的`java.util.zip`包,用于创建和读取ZIP文件;Apache Ant作为构建工具,可能用于自动化压缩和解压过程;而JUnit则用于编写和运行测试,确保代码的正确实现。在实际...
从Apache Ant 中分离出的压缩和解压功能的jar,可用于zip,tar,gzip文件的压缩和解压缩,支持中文名称
在本主题中,我们将深入探讨如何使用Java来对文件进行zip压缩和解压缩,并提及`ant.jar`的作用。 首先,让我们来看一下`JavaZip.java`这个文件。它很可能包含了一个示例程序,演示了如何使用Java API来压缩和解压缩...
// 使用Apache Ant解压文件 import org.apache.tools.ant.Project; import org.apache.tools.ant.taskdefs.Unzip; Project project = new Project(); Unzip unzipTask = new Unzip(); unzipTask.setSrc(new File(...
本文将深入探讨如何使用Java来处理ZIP文件,特别是针对标题所提及的“java 中 zip压缩文件解压工具类”。我们将讨论核心的Java API,如`java.util.zip`包中的类,并通过一个名为`CompressFileUtils`的工具类来展示...
AntZip压缩/*** 对传入的目录或者是文件进行压缩* @param srcFile 需要 压缩的目录或者文件* @param destFile 压缩文件的路径*/public void doZip(String srcFile, String destFile) {// zipDirectoryPath:需要...
`Project.zip`可能是包含Android项目的源代码和资源的压缩文件,解压后需要将其导入Android Studio或Eclipse进行进一步的开发和构建。 总之,Ant批量打包Android应用是通过编写自定义的build.xml脚本,结合SDK工具...
- 在Windows上设置Ant通常涉及解压这个ZIP文件,设置ANT_HOME环境变量,并将bin目录添加到PATH环境变量中。 4. **使用Ant** - 用户可以通过命令行工具运行Ant,例如使用"ant clean compile"命令来清理并编译项目...
Java压缩及解压tar、tar.z格式文件, 需要apache的包ant-1.7.1.jar 这个自己去搜索下下载
虽然Ant本身不是直接用于文件压缩,但它包含的`ZipTask`和`UnzipTask`可以方便地在Ant脚本中进行文件压缩和解压。如果`ZipFileList.java`使用了Ant的功能,那么可能通过`org.apache.tools.ant.types.FileSet`选择要...
在IT行业中,文件压缩与解压是常见的操作,特别是在服务器管理和软件开发中。Apache作为开源社区的巨头,提供了丰富的工具和库来处理这类任务。在这个场景中,我们关注的是Apache如何处理ZIP压缩格式,并且特别强调...
用户可以通过解压这个压缩包,并设置ANT_HOME环境变量,然后将bin目录添加到PATH环境变量中,即可在命令行中使用Ant。 使用Ant进行项目构建时,首先需要编写build.xml文件,定义项目的目标和任务。例如,可以创建一...
利用ant api做的遍历并解压各种压缩文件格式的源代码 支持 zip, (当然) gzip tar gz bz2 bz 文件包括ant.jar, 源代码 有问题可以留言,我会及时回复 ziptest下面是用来做测试的目录。 请解压到 C:\temp\ziptest ...