如何在Java中解压缩GZip文件?

在前面的示例中,我们学习了如何以GZIP格式压缩文件。为了使文件恢复到原始版本,我们现在将学习如何解压缩gzip文件。就像前面的示例一样,我们还将使用FileInputStreamandFileOutputStream类读取压缩的源文件并写出解压缩的文件。虽然GZipOutputStream用于创建gzip文件,但它GZipInputStream是处理解压缩的类。

这是您的代码段:

package org.nhooo.example.zip;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.IOException;

import java.util.zip.GZIPInputStream;

public class GZipDecompressExample {

    public static void main(String[] args) {

        // GZip输入和输出文件。

        String sourceFile = "output.gz";

        String targetFile = "data-1.txt";

        try (

            // 创建文件输入流以读取源文件。

            FileInputStream fis = new FileInputStream(sourceFile);

            // 创建一个gzip输入流以解压缩源

            // 由文件输入流定义的文件。

            GZIPInputStream gzis = new GZIPInputStream(fis);

            // 创建文件输出流,其中解压缩结果

            // 将被存储。

            FileOutputStream fos = new FileOutputStream(targetFile)) {

            // 创建一个缓冲区和临时变量

            // 文件解压缩过程。

            byte[] buffer = new byte[1024];

            int length;

            // 从压缩的源文件中读取并写入

            // 解压缩文件。

            while ((length = gzis.read(buffer)) > 0) {

                fos.write(buffer, 0, length);

            }

        } catch (IOException e) {

            e.printStackTrace();

        }

    }

}

                       

以上是 如何在Java中解压缩GZip文件? 的全部内容, 来源链接: utcz.com/z/330726.html

回到顶部