In this tutorial you will see how to make a gzip file from any given file.
In this tutorial you will see how to make a gzip file from any given file.In this tutorial, we will discuss how to create GZIP file by using GZIPOutputStream class. The GZIPOutputStream class is available in java.util.zip package. The GZIPOutputStream class create a input stream for compressing data in GZIP format file. The FileInputStream class create an input stream for reading data from the file.
In this example, we will create a GZIP file from a given file. First of all, we will read given file with the help of FileInputStream class and then after store data in a internal buffer. The BufferedInputStream class read bytes from input stream. The write method of GZIPOutputStream class write array of byte onto compress output stream..
GZIPOutputStream API:
The java.util.zip.GZIPOutputStream class extends java.io.FilterIntputStream class. It provides the following methods:
Return type | Method | Description |
void | finish() | The finish() method finish writing data on associated output stream and not close stream. |
void | close() | The close() method close writing data on associated output stream and close stream. |
void | write(byte[] b, int offset, int length) | The write(..) method writes an array of bytes onto compress output stream |
import java.io.*; import java.util.zip.*; import java.io.FileOutputStream; import java.io.FileInputStream; import java.util.zip.GZIPOutputStream; import java.io.IOException; class Gzipcompress { static String sourcefile = "testfile.txt"; public static void main(String args[]) { try { File oldfile = new File(sourcefile); System.out.println(" Given file name is : " + oldfile); FileInputStream finStream = new FileInputStream(oldfile); BufferedInputStream bufinStream = new BufferedInputStream(finStream); FileOutputStream outStream = new FileOutputStream(oldfile); GZIPOutputStream goutStream = new GZIPOutputStream(outStream); byte[] buf = new byte[1024]; int i; while ((i = bufinStream.read(buf)) >= 0) { goutStream.write(buf, 0, i); } System.out.println("Created GZIP file is " + oldfile + ".gz"); System.out.println("GZIP File successfully created"); bufinStream.close(); goutStream.close(); }catch (IOException e) { System.out.println("Exception is" + e.getMessage()); } } } |
C:\>java Gzipcompress Given file name is : testfile.txt Created GZIP file is testfile.txt.gz GZIP File successfully created |