`
xiaofengtoo
  • 浏览: 492751 次
  • 性别: Icon_minigender_1
  • 来自: xiamen
社区版块
存档分类
最新评论

java ant 压缩与解压缩

    博客分类:
  • java
 
阅读更多

以下本文来自:

http://blog.csdn.net/lr5200/article/details/6606518

 

其他参考:

http://lj6684.iteye.com/blog/901378

http://hi.baidu.com/xghrbc1001/blog/item/884b5afafe0371909f514657.html

 

 

利用Apache ant.jar中的zip包进行Zip压缩和解压

    import java.io.File;  
    import java.io.FileInputStream;  
    import java.io.FileOutputStream;  
    import java.io.IOException;  
    import java.io.InputStream;  
    import java.io.OutputStream;  
    import java.util.Enumeration;  
    import java.util.zip.CRC32;  
    import java.util.zip.CheckedOutputStream;  
      
    import org.apache.tools.zip.ZipEntry;  
    import org.apache.tools.zip.ZipFile;  
    import org.apache.tools.zip.ZipOutputStream;  
      
      
    /** 
     * 利用Apache ant.jar中的zip包进行Zip压缩和解压 
     */  
    public class XZouZip {  
        /** 
         * 测试压缩 
         */  
        public void testZip(){  
              
            File srcFile = new File("c:/upload");//要压缩的文件对象  
              
            File targetZipFile = new File("c:/upload.zip");//压缩后的文件名  
              
            ZipOutputStream out = null;  
              
            boolean boo = false;//是否压缩成功  
              
            try{  
                  
                CheckedOutputStream cos = new CheckedOutputStream(new FileOutputStream(  
                        targetZipFile), new CRC32());  
                 out = new ZipOutputStream(cos);  
                  
                //out = new ZipOutputStream(new BufferedOutputStream(new FileOutputStream("c:/uploadd.zip")));  
                  
                zip(srcFile, out, "", true);  
                  
                boo = true;  
                  
            }catch(IOException ex){  
                throw new RuntimeException(ex);  
            }finally{  
                  
                try{  
                    if(out!=null)  
                        out.close();  
                }catch(IOException ex){  
                    throw new RuntimeException("关闭Zip输出流出现异常",ex);  
                }finally{  
                    //清理操作  
                    if(!boo && targetZipFile.exists())//压缩不成功,  
                        targetZipFile.delete();  
                }  
                  
            }  
      
        }  
          
        /** 
         * 测试解压缩 
         */  
        public void testUnZip(){  
              
            File srcZipFile = new File("c:/upload.zip");//要解压缩的zip文件对象  
              
            String destDir = "c:/a";//将解压文件对象放置a目录中  
              
            boolean boo = false;//是否压缩成功  
              
            try {  
                unZip(srcZipFile,destDir);  
                boo = true;  
            } catch (IOException e) {  
                throw new RuntimeException(e);  
            }finally{  
                //清理操作  
                if(!boo)  
                    deleteDirectory(new File(destDir));//目标文件夹 。清理  
                  
            }  
              
        }  
        public static void main(String[] args) throws IOException {  
              
            XZouZip tool = new XZouZip();  
              
            tool.testZip();  
              
            //tool.testUnZip();  
              
              
        }  
          
          
          
        /** 
         * 压缩zip文件 
         * @param file 压缩的文件对象 
         * @param out 输出ZIP流 
         * @param dir 相对父目录名称 
         * @param boo 是否把空目录压缩进去 
         */  
        public void zip(File file,ZipOutputStream out,String dir,boolean boo) throws IOException{  
              
            if(file.isDirectory()){//是目录  
                  
                File []listFile = file.listFiles();//得出目录下所有的文件对象  
                  
                if(listFile.length == 0 && boo){//空目录压缩  
                      
                    out.putNextEntry(new ZipEntry(dir + file.getName() + "/"));//将实体放入输出ZIP流中  
                    System.out.println("压缩." + dir + file.getName() + "/");  
                    return;  
                }else{  
                      
                    for(File cfile: listFile){  
                          
                        zip(cfile,out,dir + file.getName() + "/",boo);//递归压缩  
                    }  
                }  
                  
            }else if(file.isFile()){//是文件  
                  
                System.out.println("压缩." + dir + file.getName() + "/");  
                  
                byte[] bt = new byte[2048*2];  
                  
                ZipEntry ze = new ZipEntry(dir+file.getName());//构建压缩实体  
                //设置压缩前的文件大小  
                ze.setSize(file.length());  
                  
                out.putNextEntry(ze);////将实体放入输出ZIP流中  
                  
                FileInputStream fis = null;  
                  
                try{  
                      
                    fis = new FileInputStream(file);  
                      
                    int i=0;  
                      
                    while((i = fis.read(bt)) != -1) {//循环读出并写入输出Zip流中  
        
                        out.write(bt, 0, i);  
                    }  
                      
                }catch(IOException ex){  
                    throw new IOException("写入压缩文件出现异常",ex);  
                }finally{  
                      
                    try{  
                        if (fis != null)  
                            fis.close();//关闭输入流  
                          
                    }catch(IOException ex){  
                          
                        throw new IOException("关闭输入流出现异常");  
                    }  
      
                }             
            }  
              
        }  
          
        /** 
         * 解压缩zipFile 
         * @param file 要解压的zip文件对象 
         * @param outputDir 要解压到某个指定的目录下 
         * @throws IOException 
         */  
        public void unZip(File file,String outputDir) throws IOException {  
              
              
            ZipFile zipFile = null;  
              
            try {  
                  
                zipFile =  new ZipFile(file);     
                  
                createDirectory(outputDir,null);//创建输出目录  
      
                Enumeration<?> enums = zipFile.getEntries();  
                  
                while(enums.hasMoreElements()){  
                      
                    ZipEntry entry = (ZipEntry) enums.nextElement();  
                      
                    System.out.println("解压." +  entry.getName());  
                      
                    if(entry.isDirectory()){//是目录  
                          
                        createDirectory(outputDir,entry.getName());//创建空目录  
                          
                    }else{//是文件  
                          
                        File tmpFile = new File(outputDir + "/" + entry.getName());  
                          
                        createDirectory(tmpFile.getParent() + "/",null);//创建输出目录  
                          
                        InputStream in = null;  
                          
                        OutputStream out = null;  
                          
                        try{  
                            in = zipFile.getInputStream(entry);;  
                              
                            out = new FileOutputStream(tmpFile);  
                              
                            int length = 0;  
                              
                            byte[] b = new byte[2048];  
                              
                            while((length = in.read(b)) != -1){  
                                out.write(b, 0, length);  
                            }  
                          
                        }catch(IOException ex){  
                            throw ex;  
                        }finally{  
                            if(in!=null)  
                                in.close();  
                            if(out!=null)  
                                out.close();  
                        }  
                          
                    }  
                      
                }  
                  
            } catch (IOException e) {  
                throw new IOException("解压缩文件出现异常",e);  
            } finally{  
                try{  
                    if(zipFile != null){  
                        zipFile.close();  
                    }  
                }catch(IOException ex){  
                    throw new IOException("关闭zipFile出现异常",ex);  
                }  
            }  
              
              
        }  
          
        /** 
         * 构建目录 
         * @param outputDir 
         * @param subDir 
         */  
        public void createDirectory(String outputDir,String subDir){  
              
            File file = new File(outputDir);  
              
            if(!(subDir == null || subDir.trim().equals(""))){//子目录不为空  
                  
                file = new File(outputDir + "/" + subDir);  
            }  
              
            if(!file.exists()){  
                  
                file.mkdirs();  
            }  
              
        }  
          
        /** 
         * 清理文件(目录或文件) 
         * @param file 
         */  
        public void deleteDirectory(File file){  
              
            if(file.isFile()){  
                  
                file.delete();//清理文件  
            }else{  
                  
                File list[] = file.listFiles();  
                  
                if(list!=null){  
                  
                    for(File f: list){  
                        deleteDirectory(f);  
                    }  
                    file.delete();//清理目录  
                }  
                  
            }  
              
        }  
    }  

 

Ant 压缩与解压缩 (本人在使用的)

    import java.io.File;  
      
    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;  
      
      
    /** 
     * 利用Apache ant.jar中的ant包进行Zip压缩和解压 
     * 这个更为简单 
     */  
    public class XZouZipByAnt {  
      
        public static void main(String[] args) {  
              
            XZouZipByAnt jzb = new XZouZipByAnt();  
              
            jzb.zip("c:/upload", "c:/upload.zip");  
              
            //jzb.unZip("c:/a", "c:/upload.zip");  
        }  
          
        /** 
         * 解压缩 
         * @param destDir 生成的目标目录下   c:/a 
         * @param sourceZip 源zip文件      c:/upload.zip 
         * 结果则是 将upload.zip文件解压缩到c:/a目录下 
         */  
        public void unZip(String destDir,String sourceZip){  
              
             try {  
                Project prj1 = new Project();  
                  
                Expand expand = new Expand();  
                  
                expand.setProject(prj1);  
                  
                expand.setSrc(new File(sourceZip));  
                  
                expand.setOverwrite(false);//是否覆盖  
      
                File f = new File(destDir);  
                  
                expand.setDest(f);  
                  
                expand.execute();  
            } catch (Exception e) {  
                e.printStackTrace();  
            }  
        }  
      
      
        /** 
         * 压缩 
         *  
         * @param sourceFile 
         *            压缩的源文件 如: c:/upload 
         * @param targetZip 
         *            生成的目标文件 如:c:/upload.zip 
         */  
        public void zip(String sourceFile,String targetZip){  
              
              Project prj = new Project();  
                
              Zip zip = new Zip();  
                
              zip.setProject(prj);  
                
              zip.setDestFile(new File(targetZip));//设置生成的目标zip文件File对象  
                
              FileSet fileSet = new FileSet();  
                
              fileSet.setProject(prj);  
                
              fileSet.setDir(new File(sourceFile));//设置将要进行压缩的源文件File对象  
                
              //fileSet.setIncludes("**/*.java"); //包括哪些文件或文件夹,只压缩目录中的所有java文件  
                
              //fileSet.setExcludes("**/*.java"); //排除哪些文件或文件夹,压缩所有的文件,排除java文件  
                
                
              zip.addFileset(fileSet);  
      
              zip.execute();  
      
        }  
    }  
 

通过 Apache Tool 进行JAVA tar || tar.gz

 

    import java.io.BufferedInputStream;  
    import java.io.BufferedOutputStream;  
    import java.io.File;  
    import java.io.FileInputStream;  
    import java.io.FileOutputStream;  
    import java.io.IOException;  
    import java.io.InputStream;  
    import java.io.OutputStream;  
    import java.util.zip.GZIPInputStream;  
    import java.util.zip.GZIPOutputStream;  
      
    import org.apache.tools.tar.TarEntry;  
    import org.apache.tools.tar.TarInputStream;  
    import org.apache.tools.tar.TarOutputStream;  
      
      
    /** 
     * 通过 Apache Tool 进行JAVA tar || tar.gz 
     */  
    public class XZouTarAndGz {  
      
      
        /** 
         * 测试归档tar文件 
         */  
        public File testTar(){  
              
            File srcFile = new File("c:/upload");//要归档的文件对象  
              
            File targetTarFile = new File("c:/upload.tar");//归档后的文件名  
              
            TarOutputStream out = null;  
              
            boolean boo = false;//是否压缩成功  
              
            try{  
                out = new TarOutputStream(new BufferedOutputStream(new FileOutputStream(targetTarFile)));  
                  
                tar(srcFile, out, "", true);  
                  
                boo = true;  
                  
                //归档成功  
                  
                return targetTarFile;  
                  
            }catch(IOException ex){  
                throw new RuntimeException(ex);  
            }finally{  
                  
                try{  
                    if(out!=null)  
                        out.close();  
                }catch(IOException ex){  
                    throw new RuntimeException("关闭Tar输出流出现异常",ex);  
                }finally{  
                    //清理操作  
                    if(!boo && targetTarFile.exists())//归档不成功,  
                        targetTarFile.delete();  
                      
                }  
                  
            }  
      
              
              
              
        }  
          
          
        /** 
         * 测试压缩归档tar.gz文件 
         */  
        public void testTarGz(){  
              
            File tarFile = testTar();//生成的tar文件  
              
            File gzFile = new File(tarFile + ".gz");//将要生成的压缩文件  
              
            GZIPOutputStream out = null;  
              
            InputStream in = null;  
              
            boolean boo = false;//是否成功  
              
            try{  
                  
                in = new FileInputStream(tarFile);  
                  
                out = new GZIPOutputStream(new FileOutputStream(gzFile),1024 * 2);  
                  
                byte b[] = new byte[1024 * 2];  
                  
                int length = 0;  
                  
                while( (length = in.read(b)) != -1 ){  
                      
                    out.write(b,0,length);  
                }  
                  
                boo = true;  
                  
            }catch(Exception ex){  
                  
                throw new RuntimeException("压缩归档文件失败",ex);  
            }finally{  
                  
                try{  
                    if(out!=null)  
                        out.close();  
                    if(in!=null)  
                        in.close();  
                }catch(IOException ex){  
                    throw new RuntimeException("关闭流出现异常",ex);  
                }finally{  
                      
                    if(!boo){//清理操作  
                          
                        tarFile.delete();  
                          
                        if(gzFile.exists())  
                            gzFile.delete();  
                          
                    }  
                      
                }  
                  
            }  
              
        }  
          
          
          
        /** 
         * 测试解压归档tar文件 
         */  
        public void testUnTar(){  
              
            File srcTarFile = new File("c:/upload.tar");//要解压缩的tar文件对象  
              
            String destDir = "c:/XZou";//把解压的文件放置到c盘下的XZou目录下面  
              
            boolean boo = false;//是否压缩成功  
              
            try {  
                unTar(srcTarFile,destDir);  
                boo = true;  
            } catch (IOException e) {  
                throw new RuntimeException(e);  
            }finally{  
                //清理操作  
                if(!boo)  
                    deleteDirectory(new File(destDir));//目标文件夹 。清理  
                  
            }  
              
        }  
          
        /** 
         * 测试解压归档tar文件 
         */  
        public void testUnTarGz(){  
              
            File srcTarGzFile = new File("c:/up.tar.gz");//要解压缩的tar.gz文件对象  
              
            String destDir = "c:/XZou";//把解压的文件放置到c盘下的XZou目录下面  
              
            boolean boo = false;//是否压缩成功  
              
            try {  
                unTarGz(srcTarGzFile,destDir);  
                boo = true;  
            } catch (IOException e) {  
                throw new RuntimeException(e);  
            }finally{  
                //清理操作  
                if(!boo)  
                    deleteDirectory(new File(destDir));//目标文件夹 。清理  
                  
            }  
              
        }  
          
        public static void main(String[] args) throws Exception {  
          
            XZouTarAndGz jtar = new XZouTarAndGz();  
              
            //jtar.testTar();  
              
            //jtar.testTarGz();  
              
            //jtar.testUnTar();  
              
            jtar.testUnTarGz();  
              
        }  
        /** 
         * 归档tar文件 
         * @param file 归档的文件对象 
         * @param out 输出tar流 
         * @param dir 相对父目录名称 
         * @param boo 是否把空目录归档进去 
         */  
        public static void tar(File file,TarOutputStream out,String dir,boolean boo) throws IOException{  
              
            if(file.isDirectory()){//是目录  
                  
                File []listFile = file.listFiles();//得出目录下所有的文件对象  
                  
                if(listFile.length == 0 && boo){//空目录归档  
                      
                    out.putNextEntry(new TarEntry(dir + file.getName() + "/"));//将实体放入输出Tar流中  
                      
                    System.out.println("归档." + dir + file.getName() + "/");  
                      
                    return;  
                }else{  
                      
                    for(File cfile: listFile){  
                          
                        tar(cfile,out,dir + file.getName() + "/",boo);//递归归档  
                    }  
                }  
                  
            }else if(file.isFile()){//是文件  
                  
                System.out.println("归档." + dir + file.getName() + "/");  
                  
                byte[] bt = new byte[2048*2];  
                  
                TarEntry ze = new TarEntry(dir+file.getName());//构建tar实体  
                //设置压缩前的文件大小  
                ze.setSize(file.length());  
                  
                //ze.setName(file.getName());//设置实体名称.使用默认名称  
                  
                out.putNextEntry(ze);////将实体放入输出Tar流中  
                  
                FileInputStream fis = null;  
                  
                try{  
                      
                    fis = new FileInputStream(file);  
                      
                    int i=0;  
                      
                    while((i = fis.read(bt)) != -1) {//循环读出并写入输出Tar流中  
        
                        out.write(bt, 0, i);  
                    }  
      
                }catch(IOException ex){  
                    throw new IOException("写入归档文件出现异常",ex);  
                }finally{  
                      
                    try{  
                        if (fis != null)  
                            fis.close();//关闭输入流  
                        out.closeEntry();  
                    }catch(IOException ex){  
                          
                        throw new IOException("关闭输入流出现异常");  
                    }  
      
                }             
            }  
              
        }  
          
          
        /** 
         * 解压tar File 
         * @param file 要解压的tar文件对象 
         * @param outputDir 要解压到某个指定的目录下 
         * @throws IOException 
         */  
        public void unTar(File file,String outputDir) throws IOException {  
              
              
            TarInputStream tarIn = null;  
              
            try{  
                  
                tarIn = new TarInputStream(new FileInputStream(file),1024 * 2);  
                  
                createDirectory(outputDir,null);//创建输出目录  
                  
                TarEntry entry = null;  
                  
                while( (entry = tarIn.getNextEntry()) != null ){  
                      
                    if(entry.isDirectory()){//是目录  
                          
                        createDirectory(outputDir,entry.getName());//创建空目录  
                          
                    }else{//是文件  
                          
                        File tmpFile = new File(outputDir + "/" + entry.getName());  
                          
                        createDirectory(tmpFile.getParent() + "/",null);//创建输出目录  
                          
                        OutputStream out = null;  
                          
                        try{  
                          
                            out = new FileOutputStream(tmpFile);  
                              
                            int length = 0;  
                              
                            byte[] b = new byte[2048];  
                              
                            while((length = tarIn.read(b)) != -1){  
                                out.write(b, 0, length);  
                            }  
                          
                        }catch(IOException ex){  
                            throw ex;  
                        }finally{  
                              
                            if(out!=null)  
                                out.close();  
                        }  
                          
                    }  
                }  
                  
            }catch(IOException ex){  
                throw new IOException("解压归档文件出现异常",ex);  
            } finally{  
                try{  
                    if(tarIn != null){  
                        tarIn.close();  
                    }  
                }catch(IOException ex){  
                    throw new IOException("关闭tarFile出现异常",ex);  
                }  
            }  
              
        }  
          
          
        /** 
         * 解压tar.gz 文件 
         * @param file 要解压的tar.gz文件对象 
         * @param outputDir 要解压到某个指定的目录下 
         * @throws IOException 
         */  
        public void unTarGz(File file,String outputDir) throws IOException{  
              
            TarInputStream tarIn = null;  
              
            try{  
                  
                tarIn = new TarInputStream(new GZIPInputStream(  
                        new BufferedInputStream(new FileInputStream(file))),  
                        1024 * 2);  
                  
                createDirectory(outputDir,null);//创建输出目录  
                  
                TarEntry entry = null;  
                  
                while( (entry = tarIn.getNextEntry()) != null ){  
                      
                    if(entry.isDirectory()){//是目录  
                          
                        createDirectory(outputDir,entry.getName());//创建空目录  
                          
                    }else{//是文件  
                          
                        File tmpFile = new File(outputDir + "/" + entry.getName());  
                          
                        createDirectory(tmpFile.getParent() + "/",null);//创建输出目录  
                          
                        OutputStream out = null;  
                          
                        try{  
                          
                            out = new FileOutputStream(tmpFile);  
                              
                            int length = 0;  
                              
                            byte[] b = new byte[2048];  
                              
                            while((length = tarIn.read(b)) != -1){  
                                out.write(b, 0, length);  
                            }  
                          
                        }catch(IOException ex){  
                            throw ex;  
                        }finally{  
                              
                            if(out!=null)  
                                out.close();  
                        }  
                          
                    }  
                }  
                  
            }catch(IOException ex){  
                throw new IOException("解压归档文件出现异常",ex);  
            } finally{  
                try{  
                    if(tarIn != null){  
                        tarIn.close();  
                    }  
                }catch(IOException ex){  
                    throw new IOException("关闭tarFile出现异常",ex);  
                }  
            }  
              
              
              
        }  
          
        /** 
         * 构建目录 
         * @param outputDir 
         * @param subDir 
         */  
        public void createDirectory(String outputDir,String subDir){  
              
            File file = new File(outputDir);  
              
            if(!(subDir == null || subDir.trim().equals(""))){//子目录不为空  
                  
                file = new File(outputDir + "/" + subDir);  
            }  
              
            if(!file.exists()){  
                  
                file.mkdirs();  
            }  
              
        }  
          
        /** 
         * 清理文件(目录或文件) 
         * @param file 
         */  
        public void deleteDirectory(File file){  
              
            if(file.isFile()){  
                  
                file.delete();//清理文件  
            }else{  
                  
                File list[] = file.listFiles();  
                  
                if(list!=null){  
                  
                    for(File f: list){  
                        deleteDirectory(f);  
                    }  
                    file.delete();//清理目录  
                }  
                  
            }  
              
        }  
    }  

 

Java操作压缩文件技术整理

 

1. RAR解压

RAR属于目前Windows平台应用最广泛的压缩文件格式,但由于RAR格式为商业压缩算法,非免费,所以Java方面没有特别合适的开源制作/ 解析RAR文件的库。网上解决办法很多,最多的还是介绍由Java调用命令行工具执行winRAR命令进行压缩文件解析操作(虽然可行,但总感觉有那么点 别扭)

 

之前在网上有一款开源的项目叫 JUnrar,但目前项目Project地址已经无效了(不知道是不是触犯了商业条款被迫封了),在被人的空间中搜到了一个当时的发布版本,调用时需要配 合其内部提供的dll使用,不是100% Java实现,但也比调用命令行方式用起来正规。经初步测试查看RAR压缩文件内文件列表及压缩文件解压功能正常(压缩包内有示例程序,一看就懂)

附件中Junrar.rar 下载

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • ant.jar (1.8 MB)
  • 下载次数: 16
分享到:
评论

相关推荐

    java zip 压缩 解压缩 附带ant.jar

    在这个例子中,`compress`任务会将当前目录下的`source.txt`文件压缩到`compressed.zip`,而`decompress`任务则会将`compressed.zip`解压缩到`uncompressed`目录。 总结来说,Java的`java.util.zip`库提供了基本的...

    利用ant.jar解压缩zip包

    总的来说,利用Apache Ant的ant.jar库,无论是通过Java代码还是Ant构建文件,都能方便、高效地解压缩ZIP文件,而且对于包含中文文件名的情况,它提供了良好的支持。在实际开发中,理解并熟练运用这类工具可以极大地...

    java文件解压缩工具箱及案例

    在Java编程环境中,处理文件的压缩与解压缩是一项常见的任务,尤其在数据传输、存档或备份场景下。本主题将深入探讨如何使用Java来创建一个文件解压缩工具箱,特别关注支持ZIP和RAR格式,并解决中文乱码问题。首先,...

    Java压缩/解压缩zip

    使用Java核心API实现单文件/多文件/整个目录的压缩/解压缩功能,由于自带API(1.6)不支持指定编码方式,因此中文会出现乱码(1.7貌似已经支持指定编码方式),所以还写了一个基于ant包的压缩/解压缩代码。

    ant-1.9.7jar包 java实现压缩文件文件夹

    Ant的`&lt;zip&gt;`任务不仅限于压缩,还可以解压缩ZIP文件,或者在现有ZIP文件中添加、删除或更新条目。 至于“ant-1.9.7压缩资源包”,这通常会包含Ant的1.9.7版本的所有必需文件,包括JAR包和其他必要的文档、库和示例...

    java解压缩zip代码与用到的jar包

    标题提到的"java解压缩zip代码与用到的jar包"主要涉及了Java对ZIP文件的操作,以及一个名为`ant.jar`的第三方库。`ant.jar`是Apache Ant的核心库,它是一个基于Java的任务执行工具,广泛用于构建项目,其中包含了...

    java 自动解压缩

    Java 提供了丰富的库和工具来处理文件的压缩与解压缩工作。在这个场景中,我们提到的"java 自动解压缩"可能涉及到一个Java程序,它能够自动化地对ZIP或GZIP格式的压缩文件进行解压。此外,提到了`ant.jar`,这是...

    java_zip压缩与解压缩(不支持中文,ant.jar包的下支持)

    以下是使用Java标准库和Ant分别进行ZIP压缩和解压缩的基本示例: 1. 使用`java.util.zip`进行压缩: ```java import java.io.*; import java.util.zip.*; public class ZipExample { public static void main...

    java 中 zip压缩文件解压工具类

    虽然Ant不直接用于解压缩文件,但可以与Java代码结合使用,例如通过Ant任务来调用`CompressFileUtils`进行解压缩操作。Ant提供了一系列的任务,如`unzip`,可以直接在构建脚本中用于解压缩文件。 至于标签“文件解...

    java 解压缩目录下的所有文件

    java 解压缩目录下的所有文件 需要用的ant.jar 可以解决中文乱码问题

    java ant详细介绍

    3. 解压缩Ant的安装包到一个方便的位置,例如D:\ant-1.6。 4. 设置ANT_HOME环境变量,并将ANT_HOME/bin添加到PATH环境变量中。 5. 验证Ant安装是否成功,通过命令行运行ant命令,如果显示"Buildfile: build.xml does...

    java操作压缩文件和解压文件实例代码(经测试)

    3. **解压缩文件**:与压缩相反,`unzipFiles()`方法可能利用`ZipInputStream`来读取ZIP文件并解压到指定目录。通过循环遍历输入流中的每个`ZipEntry`,创建对应的目标文件,然后将其内容复制出来。 4. **路径和...

    Java压缩及解压tar、tar.z格式文件

    Java压缩及解压tar、tar.z格式文件, 需要apache的包ant-1.7.1.jar 这个自己去搜索下下载

    java 操作Zip文件(压缩、解压、加密).zip

    Java操作Zip文件主要涉及到对文件和目录的压缩与解压缩,以及在必要时对压缩文件进行加密处理。这里我们重点讨论使用两个库:`zip4j`和`Apache Ant`来实现这些功能。 1. **zip4j库**:`zip4j-1.3.2.jar`是一个用...

    java解压缩

    根据提供的文件信息,我们可以归纳出几个关键的知识点,这些知识点主要围绕着Java中的压缩与解压缩操作。下面将对这些知识点进行详细的阐述。 ### 1. Java中的ZIP压缩 #### 压缩基本原理 在Java中,可以利用`java....

    Java打包工具类(包含ant.jar和java类)

    8. **与其他工具集成**:`ant.jar` 提供了与Ant构建系统集成的可能性。在某些情况下,`ZipTools.java`可能被设计成一个Ant任务,允许在Ant构建脚本中直接调用。 综上所述,`Java打包工具类(包含ant.jar和java类)`...

Global site tag (gtag.js) - Google Analytics