- java.util.zip Package Classes
- java.util.zip - Home
- java.util.zip - Adler32
- java.util.zip - CheckedInputStream
- java.util.zip - CheckedOutputStream
- java.util.zip - CRC32
- java.util.zip - Deflater
- java.util.zip - DeflaterInputStream
- java.util.zip - DeflaterOutputStream
- java.util.zip - GZIPInputStream
- java.util.zip - GZIPOutputStream
- java.util.zip - Inflater
- java.util.zip - InflaterInputStream
- java.util.zip - InflaterOutputStream
- java.util.zip - ZipEntry
- java.util.zip - ZipFile
- java.util.zip - ZipInputStream
- java.util.zip - ZipOutputStream
- java.util.zip Package Extras
- java.util.zip - Exceptions
- java.util.zip - Error
- java.util.zip Useful Resources
- java.util.zip - Quick Guide
- java.util.zip - Useful Resources
- java.util.zip - Discussion
java.util.zip.GZIPOutputStream.write() Method Example
Description
The java.util.zip.GZIPOutputStream.write(byte[] buf, int off, int len) method writes array of bytes to the compressed output stream. This method will block until all the bytes are written.
Declaration
Following is the declaration for java.util.zip.GZIPOutputStream.write(byte[] buf, int off, int len) method.
public int write(byte[] buf, int off, int len) throws IOException
Parameters
buf − the data to be written.
off − the start offset of the data.
len − the length of the data.
Exceptions
IOException − if an I/O error has occurred.
Example
The following example shows the usage of java.util.zip.GZIPOutputStream.write(byte[] buf, int off, int len) method.
package com.tutorialspoint; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.util.Arrays; import java.util.zip.DataFormatException; import java.util.zip.GZIPInputStream; import java.util.zip.GZIPOutputStream; public class GZIPOutputStreamDemo { public static void main(String[] args) throws DataFormatException, IOException { String message = "Welcome to TutorialsPoint.com;" +"Welcome to TutorialsPoint.com;" +"Welcome to TutorialsPoint.com;" +"Welcome to TutorialsPoint.com;" +"Welcome to TutorialsPoint.com;" +"Welcome to TutorialsPoint.com;" +"Welcome to TutorialsPoint.com;" +"Welcome to TutorialsPoint.com;" +"Welcome to TutorialsPoint.com;" +"Welcome to TutorialsPoint.com;"; System.out.println("Original Message length : " + message.length()); byte[] input = message.getBytes("UTF-8"); // Compress the bytes ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream(); GZIPOutputStream outputStream = new GZIPOutputStream(arrayOutputStream); outputStream.write(input,0, input.length); outputStream.close(); //Read and decompress the data byte[] readBuffer = new byte[5000]; ByteArrayInputStream arrayInputStream = new ByteArrayInputStream(arrayOutputStream.toByteArray()); GZIPInputStream inputStream = new GZIPInputStream(arrayInputStream); int read = inputStream.read(readBuffer,0,readBuffer.length); inputStream.close(); //Should hold the original (reconstructed) data byte[] result = Arrays.copyOf(readBuffer, read); // Decode the bytes into a String message = new String(result, "UTF-8"); System.out.println("UnCompressed Message length : " + message.length()); } }
Let us compile and run the above program, this will produce the following result −
Original Message length : 300 UnCompressed Message length : 300Print
javazip_gzipoutputstream.htm
Advertisements