Android Zip Unzip Directory zipSubFolder(ZipOutputStream out, File folder, int basePathLength)

Here you can find the source of zipSubFolder(ZipOutputStream out, File folder, int basePathLength)

Description

zip Sub Folder

Declaration

private static void zipSubFolder(ZipOutputStream out, File folder,
            int basePathLength) throws IOException 

Method Source Code

//package com.java2s;
import java.io.BufferedInputStream;

import java.io.File;
import java.io.FileInputStream;

import java.io.IOException;
import java.util.zip.ZipEntry;

import java.util.zip.ZipOutputStream;
import android.util.Log;

public class Main {
    private static final int BUFFER_SIZE = 1024;

    private static void zipSubFolder(ZipOutputStream out, File folder,
            int basePathLength) throws IOException {

        File[] fileList = folder.listFiles();
        BufferedInputStream origin = null;
        for (File file : fileList) {
            if (file.isDirectory()) {
                zipSubFolder(out, file, basePathLength);
            } else {
                byte data[] = new byte[BUFFER_SIZE];
                String unmodifiedFilePath = file.getPath();
                String relativePath = unmodifiedFilePath
                        .substring(basePathLength);
                Log.i("ZIP SUBFOLDER", "Relative Path : " + relativePath);
                FileInputStream fi = new FileInputStream(unmodifiedFilePath);
                origin = new BufferedInputStream(fi, BUFFER_SIZE);
                ZipEntry entry = new ZipEntry(relativePath);
                out.putNextEntry(entry);
                int count;
                while ((count = origin.read(data, 0, BUFFER_SIZE)) != -1) {
                    out.write(data, 0, count);
                }/*  ww  w.  jav a  2s  . c o  m*/
                origin.close();
            }
        }
    }
}

Related

  1. unzipDirectory(File p2BeUnzippedDir, File pZipFile)
  2. zipSubFolder(ZipOutputStream out, File folder, int basePathLength)
  3. zipSubFolder(ZipOutputStream out, File folder, int basePathLength)
  4. zipSubFolder(ZipOutputStream out, File folder, int basePathLength)
  5. zipSubFolder(ZipOutputStream out, File folder, int basePathLength)
  6. zipSubFolder(final ZipOutputStream out, final File folder, final int basePathLength)