`

使用ant解压缩包、打压缩包

    博客分类:
  • Java
阅读更多

需要用到的jar包:

 ant.jar

 

1、解压缩包:

/**
 * 解压指定zip文件 
 * @param unZipfile:需要解压缩的压缩包路径(路径+名称+.+后缀名)
 * @param destFile:解压到的目录
 * */
public void UNCompress(File unZipfile, File destFile) {
	FileOutputStream fileOut;
    File file;
    InputStream inputStream;
    ZipFile zipFile=null;
    ZipOutputStream zipOut=null;     //压缩Zip
    try {
        //生成一个zip的文件
        zipFile = new ZipFile(unZipfile,"GBK");//设置编码,避免出现中文的情况(不管是压缩文件为中文,还是压缩包中的文件为中文)
        //遍历zipFile中所有的实体,并把他们解压出来
        for (@SuppressWarnings("unchecked")
        Enumeration<ZipEntry> entries = zipFile.getEntries(); entries.hasMoreElements();) {
            ZipEntry entry =  entries.nextElement();
            //生成他们解压后的一个文件  
            file = new File(destFile+File.separator+entry.getName());
            if (entry.isDirectory()) {
                file.mkdirs();
            } else {
                File parent = file.getParentFile();// 如果指定文件的目录不存在,就创建.
                if (!parent.exists()) {
                    parent.mkdirs();
                }  
                //获取出该压缩实体的输入流 
                    inputStream = zipFile.getInputStream(entry);
  
                    fileOut = new FileOutputStream(file);
                    int length = 0;
                    //将实体写到本地文件中去
                while ((length = inputStream.read(buf)) > 0) {
                    fileOut.write(buf, 0, length);
                }
                fileOut.close();
                inputStream.close();
            }
        }
        zipFile.close();
    } catch (IOException ioe) {
        ioe.printStackTrace();
    }
}

 

2、打压缩包:

/**
 * 打压缩包
 * @param classFileList:需要打成压缩包的文件夹路径
 * */
public void compress(List<File> classFileList) {  
	String srcPathName=null;//需要打成压缩包的文件夹路径
	File zipFile=null;//压缩包名称(路径+名称+.+后缀名)
	File srcdir=null;
	Project prj=null;
	Zip zip = null;
	if(classFileList!=null && classFileList.size()>0){
		for(File f:classFileList){
			//System.out.println(f.getAbsolutePath()+"\n"+f.getName());
			srcPathName = f.getAbsolutePath();
			//System.out.println(f.getAbsolutePath()+File.separator+f.getName()+".zip");
			zipFile = new File(f.getAbsolutePath()+".zip") ;
			
			srcdir= new File(srcPathName);  
	        if (!srcdir.exists()){  
	            throw new RuntimeException(srcPathName + "不存在!");  
	        }
	        if(zipFile.exists()){//说明当前目录下存在同名压缩文件
	        	zipFile.delete();
	        }
	        prj = new Project();  
	        zip = new Zip();  
	        zip.setEncoding("GBK");//设置编码,防止压缩文件名字乱码,还有被压缩文件的乱码
	        zip.setProject(prj);  
	        zip.setDestFile(zipFile);  
	        FileSet fileSet = new FileSet();  
	        fileSet.setProject(prj);  
	        fileSet.setDir(srcdir);  
	        zip.addFileset(fileSet);  
	        zip.execute();  //执行生成
		}
	}
}
分享到:
评论

相关推荐

    Java使用Ant批量把文件打成ZIP压缩包

    下面我们将详细探讨如何使用Ant来实现Java文件的批量ZIP打包。 首先,我们需要了解Ant的基本结构。一个Ant项目通常由一个名为`build.xml`的配置文件控制,这个文件定义了构建过程中的各个任务。为了创建ZIP压缩包,...

    apache官方ant-1.10.11版本压缩包

    这通常意味着解压缩后,你会得到一个名为"apache-ant-1.10.11"的目录,里面包含了Ant的所有组件,如bin目录(包含可执行脚本如`ant`和`ant.bat`),lib目录(包含Ant运行所需的jar文件),以及其他的文档、许可证和...

    ant打war包

    在压缩包中的文件名列表"ant打war包"可能是整个构建过程的示例项目,包含了一个使用Ant构建WAR包的实际项目结构,用户可以参考这个示例来理解和学习如何在自己的项目中应用Ant和SVN。 总之,"ant打war包"涉及了Ant...

    findbugs压缩包+findbugs.jar+findbugs-ant.jar

    综上所述,这个压缩包提供了FindBugs的完整环境,包括核心库、Ant任务支持以及Eclipse插件,涵盖了FindBugs的安装、配置、使用和结果分析等多个方面。使用FindBugs,开发者能够尽早发现潜在的bug,避免它们在实际...

    ant ant ant ant

    "Ant ant ant antant ant ant antant ant ant ant" 这个描述可能是在强调Ant在项目构建过程中的重复性和不可或缺性,暗示着它在工程中的频繁使用和核心地位。 Ant的设计理念是“一切都是XML”,它通过XML格式的构建...

    J2EE中应用Ant包压缩导出的Excel文件并提供下载

    本知识点主要围绕如何在J2EE环境中使用Ant来生成Excel文件并提供下载服务进行讲解。 首先,我们要理解Ant的核心概念。Ant是一个基于XML的构建工具,它的主要配置文件是`build.xml`,其中定义了各种构建任务。通过...

    apache-ant-1.10.1-ant编译环境

    1、解压缩包。例如解压到E:\学习类\apache-ant-1.8.2, 2、配置环境变量。在系统环境变量中新建一个ANT_HOME 的变量,值为D:\apache-ant-1.10.1。在path 变量中添加 %ANT_HOME%\bin; 如果没有path变量,则新建一个...

    ANT使用指南ANT使用指南

    2. **解压Ant**:将下载的Ant压缩包解压到指定目录,假设解压后的目录为`$Ant`。 3. **设置环境变量**: - 设置`ANT_HOME`环境变量指向`$Ant`目录。 - 将`$ANT_HOME/bin`添加到系统`PATH`环境变量中。 完成以上...

    使用Ant编译打包

    1. **下载与解压**:首先,你需要从Apache官方网站下载Ant的最新版本压缩包,将其解压缩到你选择的任何目录,例如`C:\ant`。 2. **设置环境变量**:在Windows系统中,需要设置两个环境变量: - `ANT_HOME`:将值...

    cocos2d环境包ANT

    压缩包文件"apache-ant-1.9.2"正是ANT的一个版本,解压后,你需要将其添加到系统的PATH环境变量中,这样命令行就可以识别并执行ANT命令。例如,在Windows系统中,你可能需要将ANT的bin目录路径添加到系统的Path变量...

    基于Java向zip压缩包追加文件

    当需要向已存在的ZIP文件追加文件时,首先使用`ZipUtil`解压缩ZIP文件到一个临时目录,然后在该目录中添加新的文件,最后重新压缩整个目录并覆盖原有的ZIP文件。以下是大致的步骤: - 使用`ZipUtil`的`unzip`方法...

    ant使用手册ANT使用指南

    1. **下载Ant**:从Apache官网下载最新版本的Ant压缩包。 2. **解压Ant**:将下载的文件解压到一个合适的目录。 3. **设置环境变量**: - `ANT_HOME`:指向Ant的安装目录。 - `PATH`:添加`%ANT_HOME%\bin`到系统...

    java 读取ZIP和RAR压缩包的目录结构

    java ZIP和RAR 压缩包 目录结构。 1.ant.jar 解决java自带zip不能读取中文压缩包的问题; 2.需要安装WINRAR软件,以便解压rar文件,然后获取对应目录; 3.实现在线预览压缩包目录结构的功能;

    使用ANT所需jar包

    在使用ANT时,你需要在类路径(classpath)中包含这些JAR文件,以便ANT在运行时能找到并加载所需的库。这可以通过在ANT的`&lt;classpath&gt;`标签中指定JAR文件的位置来实现。例如: ```xml &lt;path id="ant.classpath"&gt; ...

    ant1.9包下载

    在压缩包"apache-ant-1.9.3"中,你可以期待找到以下内容: 1. `bin`目录:包含Ant的可执行脚本,如ant和ant.bat,分别用于Unix/Linux和Windows环境。 2. `lib`目录:存放Ant运行所需的库文件,包括核心库和一些默认...

    ant.rar亲测可以使用

    在"ant.rar"这个压缩包中,包含的核心文件"ant"很可能是Ant的完整发行版,包括了所有必要的类库和脚本,使得用户可以直接在本地环境中运行和配置Ant。通常,这样的发行版会包含以下组件: 1. **bin** 目录:包含了...

    Ant使用指南

    Ant的安装非常简单,只需要下载并解压Ant的压缩包即可。如果要在命令行下使用Ant,则还需要配置环境变量`ANT_HOME`并将其bin目录添加到系统的PATH中。 ##### 3.2 编写构建文件 构建文件是Ant工作的核心。下面是一...

    在开发工具外编译java,使用ant技术

    在提供的压缩包"ANT"中,可能包含了Ant的使用示例、构建文件模板以及一些关于如何配置和使用Ant的文档。通过研究这些资料,你可以更深入地了解如何在不依赖IDE的情况下使用Ant来管理Java项目的构建过程。无论是新手...

    ant包+示例

    "Ant包+示例"的标题表明这可能是一个包含Ant基本组件和示例代码的压缩包,对于学习和理解Ant的使用非常有帮助。 在描述中提到的"java classes parse"是指Ant可以处理Java类文件,包括编译、打包、部署等操作。Ant的...

    ant安装文件+使用模板

    - 使用`tar -zxvf apache-ant-X.Y.Z.tar.gz`命令解压缩。 - 将解压后的目录移动到期望的安装位置,如`/usr/local/ant`。 - 更新系统路径,添加`/usr/local/ant/bin`到`PATH`环境变量中。 - 为了让所有用户都能...

Global site tag (gtag.js) - Google Analytics