关闭

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

标签: jdk压缩javajar
742人阅读 评论(0) 收藏 举报
分类:

在上一篇文章中讲到了如何使用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);

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

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:66292次
    • 积分:1016
    • 等级:
    • 排名:千里之外
    • 原创:37篇
    • 转载:3篇
    • 译文:0篇
    • 评论:11条
    文章分类
    最新评论