码迷,mamicode.com
首页 > 编程语言 > 详细

Java基础-压缩解压

时间:2018-12-01 20:23:07      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:arch   sunny   java基础   logs   cell   lin   ali   star   www.   

几种实现方案

#1.基于java.util.zip;

#2.使用zip4j

#3.使用org.apache.tools.ant

 

 

示例代码

测试代码

    <!-- Java zip > zip4j > apache ant -->

    /**

     * 方式1

     * -基于: java.util.zip

     * ---https://github.com/Blankj/AndroidUtilCode

     * ---https://github.com/SearchSunny/Android-zip-

     * summary:

     * ---#1.效率高,java.util.zip解压效率是zip4j的4倍

     * ---#2.支持.zip

     */

    public static void zipWithJava() {

        long startTime = System.currentTimeMillis();

        try {

            ZipUtils.unzipFile(zipFilePath, unzipFilePath);

        } catch (IOException e) {

            e.printStackTrace();

        }

        long endTime = System.currentTimeMillis();

        long costTime = endTime - startTime;

        System.out.print("Java zip: " + costTime + "ms" + "\n");

    }

 

    /**

     * 方式2

     * -基于: zip4j

     * ---https://github.com/ghost1372/Mzip-Android

     * ---http://www.lingala.net/zip4j/

     * summary:

     * ---#1.解压效率比较低;

     * ---#2.支持.zip .rar;

     */

    public static void zipZip4j() {

        long startTime = System.currentTimeMillis();

 

        try {

            ZipArchive.unzip(zipFilePath, unzipFilePath, "");

        } catch (Exception e) {

            e.printStackTrace();

        }

        long endTime = System.currentTimeMillis();

        long costTime = endTime - startTime;

        System.out.print("Zip4j: " + costTime + "ms" + "\n");

    }

 

    /**

     * 方式3

     * -基于: org.apache.tools.ant

     * ---http://ant.apache.org/bindownload.cgi

     * ---https://www.cnblogs.com/jecyhw/p/4531277.html

     * ---https://www.cnblogs.com/interdrp/p/6734033.html

     * summary:

     * ---#1.解压效率最低;

     * ---#2.支持.zip;

     */

    public static void zipApacheAnt() {

        long startTime = System.currentTimeMillis();

 

        try {

            AntZip.unzip(zipFilePath, unzipFilePath);

        } catch (Exception e) {

            e.printStackTrace();

        }

        long endTime = System.currentTimeMillis();

        long costTime = endTime - startTime;

        System.out.print("ApacheAnt: " + costTime + "ms" + "\n");

    }

Source:

https://github.com/zhengoogle/Java-Common/tree/master/ZipLibrary

Java基础-压缩解压

标签:arch   sunny   java基础   logs   cell   lin   ali   star   www.   

原文地址:https://www.cnblogs.com/zhen-android/p/10050532.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!