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;

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

        final int BUFFER = 2048;

        File[] fileList = folder.listFiles();
        BufferedInputStream origin = null;
        for (File file : fileList) {
            if (file.isDirectory()) {
                zipSubFolder(out, file, basePathLength);
            } else {
                byte data[] = new byte[BUFFER];
                String unmodifiedFilePath = file.getPath();
                String relativePath = unmodifiedFilePath
                        .substring(basePathLength + 1);

                FileInputStream fi = new FileInputStream(unmodifiedFilePath);
                origin = new BufferedInputStream(fi, BUFFER);
                ZipEntry entry = new ZipEntry(relativePath);
                out.putNextEntry(entry);
                int count;
                while ((count = origin.read(data, 0, BUFFER)) != -1) {
                    out.write(data, 0, count);
                }// ww  w .j a v  a  2s  . co 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)
  7. zipFileAtPath(String[] sourcePaths, String toLocation)
  8. zipFileAtPath(String[] sourcePaths, String toLocation)
  9. zipFileAtPath(final String sourcePath, final String toLocation)