java 解压缩zip文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 解压缩zip文件相关的知识,希望对你有一定的参考价值。

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;

/**
 * @author: piumnl
 * @since: 2016-12-20
 */
public class ZipUncompress {
  public static void compress(File file) {
    try (ZipInputStream inputStream = new ZipInputStream(new FileInputStream(file))) {
      ZipEntry nextEntry;
      File entryFile;

      String totalPath = file.getAbsolutePath();
      String substring = totalPath.substring(0, totalPath.lastIndexOf("."));
      File parent = new File(substring);
      if (!parent.exists()) {
        parent.mkdirs();
      }

      while ((nextEntry = inputStream.getNextEntry()) != null) {
        entryFile = new File(parent.getPath(), nextEntry.getName());

        if (nextEntry.isDirectory()) {
          entryFile.mkdirs();
        } else {
          FileOutputStream outputStream = new FileOutputStream(entryFile);

          byte[] buffer = new byte[1024];
          int read;
          while ((read = inputStream.read(buffer, 0, buffer.length)) != -1) {
            outputStream.write(buffer, 0, read);
          }
          outputStream.close();
          inputStream.closeEntry();
        }

      }
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
}

以上是关于java 解压缩zip文件的主要内容,如果未能解决你的问题,请参考以下文章

java 解压缩zip文件

xml 在java中解压缩一个zip文件。

java实现 zip解压缩

在 Java 中解压缩包含多个文件和目录的 7zip 存档 [关闭]

java 解压缩Zip文件 ziputil

java解压缩.gz .zip .tar.gz等格式的压缩包方法总结