Java Unzip File unzip(final byte[] zippedContent)

Here you can find the source of unzip(final byte[] zippedContent)

Description

unzip

License

Open Source License

Declaration

public static Map<String, byte[]> unzip(final byte[] zippedContent) throws IOException 

Method Source Code

//package com.java2s;
/**//w w  w.j av  a2s  . c o  m
 * Copyright (C) 2015 BonitaSoft S.A.
 * BonitaSoft, 32 rue Gustave Eiffel - 38000 Grenoble
 * This library is free software; you can redistribute it and/or modify it under the terms
 * of the GNU Lesser General Public License as published by the Free Software Foundation
 * version 2.1 of the License.
 * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
 * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 * See the GNU Lesser General Public License for more details.
 * You should have received a copy of the GNU Lesser General Public License along with this
 * program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
 * Floor, Boston, MA 02110-1301, USA.
 **/

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;

import java.io.IOException;

import java.util.HashMap;
import java.util.Map;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;

public class Main {
    public static Map<String, byte[]> unzip(final byte[] zippedContent) throws IOException {
        final ZipInputStream zis = new ZipInputStream(new ByteArrayInputStream(zippedContent));
        final Map<String, byte[]> resources = new HashMap<String, byte[]>();
        try {
            ZipEntry entry = zis.getNextEntry();
            while (entry != null) {
                final ByteArrayOutputStream baos = new ByteArrayOutputStream();
                try {
                    int len;
                    final byte[] buffer = new byte[1024];
                    while ((len = zis.read(buffer)) > 0) {
                        baos.write(buffer, 0, len);
                    }
                } finally {
                    baos.close();
                }
                resources.put(entry.getName(), baos.toByteArray());
                entry = zis.getNextEntry();
            }
        } finally {
            zis.closeEntry();
            zis.close();
        }
        return resources;
    }
}

Related

  1. unzip(File zipName, File destDir)
  2. unZip(File zipPath, File destPath)
  3. unzip(File zippedFile)
  4. unzip(File zippedFile, File outputDirectory)
  5. unzip(File zippedFile, File targetDir)
  6. unzip(final File dir, final ZipInputStream from)
  7. unzip(final File zip, final File dir)
  8. unzip(final File zipFile, final File destDir)
  9. unzip(final File zipFile, final String targetDir)