Java

java中如何用zipfile解压文件流

小亿
149
2024-04-08 15:42:39
栏目: 编程语言

要使用ZipFile解压文件流,可以按照以下步骤:

  1. 创建一个ZipFile对象,通过传入一个File对象或者一个文件路径来初始化该对象。
ZipFile zipFile = new ZipFile(new File("path/to/zipfile.zip"));
  1. 获取Zip文件中的所有条目(文件)。
Enumeration<? extends ZipEntry> entries = zipFile.entries();
  1. 遍历Zip文件中的所有条目,将条目解压到指定目录。
while(entries.hasMoreElements()) {
    ZipEntry entry = entries.nextElement();
    if(entry.isDirectory()) {
        // 如果是目录,创建目录
        File dir = new File("path/to/output/" + entry.getName());
        dir.mkdirs();
    } else {
        // 如果是文件,解压文件
        InputStream inputStream = zipFile.getInputStream(entry);
        OutputStream outputStream = new FileOutputStream("path/to/output/" + entry.getName());
        byte[] buffer = new byte[1024];
        int len;
        while ((len = inputStream.read(buffer)) > 0) {
            outputStream.write(buffer, 0, len);
        }
        inputStream.close();
        outputStream.close();
    }
}
  1. 最后记得关闭ZipFile对象。
zipFile.close();

通过以上步骤,可以使用ZipFile解压文件流到指定目录。

0
看了该问题的人还看了