在Android平台中如何实现Zip文件的解压缩功能呢? 因为Android内部已经集成了zlib库,对于英文和非密码的Zip文件解压缩还是比较简单的,下面给大家一个解压缩zip的 java代码,可以在Android上任何版本中使用,Unzip这个静态方法比较简单,参数一为源zip文件的完整路径,参数二为解压缩后存放的文件夹。
01 | private static void Unzip(String zipFile, String targetDir) { |
02 | int BUFFER = 4096 ; //这里缓冲区我们使用4KB, |
03 | String strEntry; //保存每个zip的条目名称 |
05 | BufferedOutputStream dest = null ; //缓冲输出流 |
06 | FileInputStream fis = new FileInputStream(zipFile); |
07 | ZipInputStream zis = new ZipInputStream( new BufferedInputStream(fis)); |
08 | ZipEntry entry; //每个zip条目的实例 |
09 | while ((entry = zis.getNextEntry()) != null ) { |
11 | Log.i( "Unzip: " , "=" + entry); |
13 | byte data[] = new byte [BUFFER]; |
14 | strEntry = entry.getName(); |
15 | File entryFile = new File(targetDir + strEntry); |
16 | File entryDir = new File(entryFile.getParent()); |
17 | if (!entryDir.exists()) { |
20 | FileOutputStream fos = new FileOutputStream(entryFile); |
21 | dest = new BufferedOutputStream(fos, BUFFER); |
22 | while ((count = zis.read(data, 0 , BUFFER)) != - 1 ) { |
23 | dest.write(data, 0 , count); |
27 | } catch (Exception ex) { |
32 | } catch (Exception cwj) { |
33 | cwj.printStackTrace(); |
上面是总结的zip文件解压缩代码,希望你大家有用,需要注意的是参数均填写完整的路径,比如/mnt/sdcard/xxx.zip这样的类型。
- Android中运用Pull解析器读取XML文件
- android音频视频播放器
- Android(安卓)framebuffer 截屏原理
- Android(安卓)存储:Internal Storage的用法以及与External storag
- Android(安卓)中自定义 Menu 资源
- Android(安卓)JNI入门第二篇――Java参数类型与本地参数类型对照
- Android安全机制之反编译
- Android(安卓)通过zygote来运行java程序
- Android(安卓)SDK tools adb.exe下文件丢失问题
随机推荐
-
Android(安卓)Vibrator 的用法
-
Android:UI控件AutoCompleteTextView、Mul
-
Android(安卓)使用Javascript作为脚本计
-
使用Uiautomator遇到的问题
-
Android设备兼容性 1
-
Android(安卓)Studio安装及首次运行遇到
-
百度云推送实践
-
android中使用zxing扫描二维码以及条形码
-
Android的安装过程
-
Android(安卓)AsyncTask 原理及Java多线