Android 教程-解压缩功能实现

文章标签: android教程,android
2014-10-22 17:10:55     34 人阅读    

如下面代码

private static void Unzip(String zipFile, String targetDir) {
 
        int BUFFER = 4096; //这里缓冲区我们使用4KB,
        String strEntry; //保存每个zip的条目名称

        try {
 
            BufferedOutputStream dest = null; //缓冲输出流
            FileInputStream fis = new FileInputStream(zipFile);
 
            ZipInputStream zis = new ZipInputStream(new BufferedInputStream(fis));
 
            ZipEntry entry; //每个zip条目的实例

            while ((entry = zis.getNextEntry()) != null) {



                try {
 
                    Log.i("Unzip: ","="+ entry);
 
                    int count; 
 
                    byte data[] = new byte[BUFFER];
 
                    strEntry = entry.getName();



                    File entryFile = new File(targetDir +"/"+ strEntry);
 
                    Log.i("entryFile", entryFile+"");
 
                    File entryDir = new File(entryFile.getParent());
 
                    Log.i("entryDir",entryDir+"");
 
                    if (!entryDir.exists()) {
 
                        entryDir.mkdirs();
 
                    }



                    FileOutputStream fos = new FileOutputStream(entryFile);
 
                    dest = new BufferedOutputStream(fos, BUFFER);
 
                    while ((count = zis.read(data, 0, BUFFER)) != -1) {
 
                        dest.write(data, 0, count);
 
                    }
 
                    dest.flush();
 
                    dest.close();
 
                } catch (Exception ex) {
 
                    ex.printStackTrace();
 
                }
 
            }
 
            zis.close();
 
        } catch (Exception cwj) {
 
            cwj.printStackTrace();
 
        }
 
    }


原文地址:http://www.itmmd.com/201410/54.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。

Android 教程-在线程中更新UI 线程的四种方法   上一篇
下一篇  iOS新手入门:开源项目AFNetworking 网络库学习

精彩回复
发表评论
姓名:       

《程序员app》专门为程序员量身定做!