• Android_JarZip压缩和解压文件


     
     

    本文资料来自《android开发权威指南》

    AndroidSDK中提供了java.util.jar和java.util.zip包中的若干类和接口来完成。

    压缩文件基本步骤:

    1、创建一个JarOutputStream或ZipOutputStream对象,分别用来生成jar或zip文件。

    2、创建了(jar|zip)OutputStream对象,还不能直接向输出流写入数据。由于压缩文件也需要使用文件名和路径来标识被压缩的文 件,因此,需要为每一个要压缩的文件创建一个JarEntry或ZipEntry对象。每一个(jar|zip)Entry对象代表一个被压缩的文件,并 通过(jar|zip)Entry对象指定被压缩文件在压缩包中的文件名和路径。

    3、调用(jar|zip)OutputStream.putNextEntry方法设置当前打开的(jar|zip)Entry对象。

    4、向(jar|zip)OutputStream对象写入数据。

    5、调用(jar|zip)OutputStream.closeEntry方法关闭当前打开的(jar|zip)Entry对象。如果还有待压缩的文件,回到第二步。


    解压缩文件的步骤:

    1、创建一个JarInputStream或ZipInputStream对象。该对象一般通过FileInputStream对象指定要解压的文件。

    2、使用(jar|zip)InputStream。getNextEntry方法枚举压缩包中所有的文件。如果getNextEntry方法返回null,表示压缩文件已经被处理完。

    3、通过(jar|zip)Entry.getName方法获得文件压缩后的路径和文件名(为了保证解压后的文件名与压缩前的是一致的,当然,也可以使用其他文件名),并使用FileOUtputStream对象指定已解压的文件。

    4、向FileOutputStream对象输出已解压的数据流。

    5、调用(jar|zip)Entry.closeEntry方法关闭当前打开的(jar|zip)Entry对象。如果还有有解压的文件,返回到第二步继续执行。


    源代码实例:

    http://download.csdn.net/download/zlfxy/5098434

  • 相关阅读:
    破周三,前不着村后不着店的,只好学pandas了,你该这么学,No.9
    周一不睡觉,也要把pandas groupy 肝完,你该这么学,No.8
    大周末的不休息,继续学习pandas吧,pandas你该这么学,No.7
    链接
    音乐
    术语
    新闻
    我的文章分类
    我的代码规则
    Jenkins 访问特别慢,且不消耗服务器资源
  • 原文地址:https://www.cnblogs.com/xgjblog/p/3912341.html
Copyright © 2020-2023  润新知