使用JDK自带的方法进行文件解压

原创 2016年05月30日 17:36:48

在上一篇文章中讲到了如何使用JDK自带的方法进行文件压缩,有了压缩自然也会有解压。同样的,网上很多方法都是使用了第三方的jar包来进行文件解压,本着能简单就简单的原则,如果能用JDK自带的方法进行解压文件岂不是更好?在这里我贴一下文件解压代码。希望能帮助有需要的小伙伴。。。

/***
   * 解压zip文件
     * @param srcPath  zip文件地址
     * @param destPath  解压后存放的地址
     * @param includeZipFileName  是否包含zip文件名
     */
    public static void unZip(String srcPath ,String destPath,boolean includeZipFileName){
       try {  
           ZipInputStream Zin=new ZipInputStream(new FileInputStream(  
                srcPath));
           BufferedInputStream Bin=new BufferedInputStream(Zin);  
           if(includeZipFileName){
            String zipFileName = srcPath.substring(srcPath.lastIndexOf(File.separator));
                        zipFileName = zipFileName.substring(0, zipFileName.indexOf("."));
       destPath += zipFileName;
        }
        File Fout=null;  
        ZipEntry entry;  
        try {  
            while((entry = Zin.getNextEntry())!=null){  
                if(entry.isDirectory())continue; 
                Fout=new File(destPath,entry.getName());  
                if(!Fout.exists()){  
                    (new File(Fout.getParent())).mkdirs();  
                }  
                FileOutputStream out=new FileOutputStream(Fout);  
                BufferedOutputStream Bout=new BufferedOutputStream(out);  
                int b;  
                while((b=Bin.read())!=-1){  
                    Bout.write(b);  
                }  
                Bout.close();  
                out.close();      
            }  
            Bin.close();  
            Zin.close();  
        } catch (IOException e) {  
            e.printStackTrace();  
        }  
      } catch (FileNotFoundException e) {  
           e.printStackTrace();  
       }  
    }

使用方法也很简单的。。

unZip("E:\\filecopy\\appwww.zip","E:\\filecopy",false);

注意传入文件名的路径一定要是 “\\” 不然会出错的。。

使用JDK自带的方法进行文件压缩

在项目中我们常常会需要把文件进行压缩处理,Java中压缩文件的方法有很多种,我看了很多资料,网上很多压缩的方法都是使用到了第三方的jar包,个人感觉这样很麻烦,于是找了很久,找到了一个不需要任何第三方...

使用JDK自带的native2ascii工具对properties文件进行编码转换

1. native2ascii介绍        native2ascii.exe 是 Java 的一个文件转码工具,是将特殊各异的内容转为用指定的编码标准文体形式,它通常位于 JDK_home...

ZipControl对文件进行压缩与解压的方法

最近有个需求,就是要将手机sd卡中的文件压缩成zip格式上传到服务器中。经过百度后,得到了下面的ZipControl方法。如下: package com.xinsheng.yx.utils; im...

maven编译指定使用自己配置的jdk而不是eclipse自带的解决方法

通常我们使用maven管理项目时,下载好项目后,需要使用maven eclipse:eclipse 命令把项目转成eclipse识别的项目。 但是有的时候,代码中会使用了jdk中一些比较特殊的方法和类...

JDK自带的转码工具native2ascii的使用方法详解

JDK自带的转码工具native2ascii的使用方法详解 背景:在做Java开发的时候,常常会出现一些乱码,或者无法正确识别或读取的文件,比如常见的validator验证用的消息资源(prop...

Qt使用QuaZip对文件进行压缩解压操作

使用QuaZip对文件进行压缩解压操作        八月份快要过去了,突然想到我还没有写一篇日志呢,想一想这一个月我并没有做开发以外的事情,三十天来还是尝试并且解决了不少技术上的问题的。所以这次我...

使用QuaZip对文件进行压缩解压操作

八月份快要过去了,突然想到我还没有写一篇日志呢,想一想这一个月我并没有做开发以外的事情,三十天来还是尝试并且解决了不少技术上的问题的。所以这次我打算将其中一些作为日志分享出来。...

使用GZIPOutputStream和GZIPInputStream进行压缩解压文件

最近的项目需要对一个.gz文件解压,刚好java api提供了GZIPInputStream这样的类,顺便也简单学习了GZIPOutputStream类提供的压缩gz的方法。写了两个函数分别可以实现压...
  • triplee
  • triplee
  • 2012年03月14日 11:47
  • 1889

使用apache的工具类进行zip(rar等压缩文件)的解压

首先去Ant官网下载一个Ant,然后在项目中导入Ant.jar 话不多说,咱们直接上代码:(在import时要注意引入ant.jar中的压缩工具类) package hoking.in.act...

使用dcm4che3对jpeg压缩的dcm文件进行解压

前段时间项目比较忙,最近稍微得些空闲时间将dcm4che3的一些学习笔记整理一下今天总结一下使用dcm4che3对一些压缩过的dcm文件进行解压。在一些情况下,为了减小dcm文件网络传输的大小,需要对...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用JDK自带的方法进行文件解压
举报原因:
原因补充:

(最多只允许输入30个字)