前の記事では、

ファイルをGZip形式に圧縮する方法

について学習しました。この記事では、圧縮ファイルをGzipファイルから解凍/解凍する方法を学習します。

Gzipの例

この例では、Gzipファイル ”

/home/mkyong/file1.gz

“を ”

/home/mkyong/file1.txt

“に復元します。

package com.mkyong.gzip;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.zip.GZIPInputStream;

public class GZipFile
{
    private static final String INPUT__GZIP__FILE = "/home/mkyong/file1.gz";
    private static final String OUTPUT__FILE = "/home/mkyong/file1.txt";

    public static void main( String[]args )
    {
        GZipFile gZip = new GZipFile();
        gZip.gunzipIt();
    }

   /** **
     **  GunZip it
     ** /    public void gunzipIt(){

     byte[]buffer = new byte[1024];

     try{

         GZIPInputStream gzis =
            new GZIPInputStream(new FileInputStream(INPUT__GZIP__FILE));

         FileOutputStream out =
            new FileOutputStream(OUTPUT__FILE);

        int len;
        while ((len = gzis.read(buffer)) > 0) {
            out.write(buffer, 0, len);
        }

        gzis.close();
        out.close();

        System.out.println("Done");

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