- java.lang.Object
-
- java.io.OutputStream
-
- java.io.FilterOutputStream
-
- java.util.zip.DeflaterOutputStream
-
- java.util.zip.GZIPOutputStream
-
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
public class GZIPOutputStream extends DeflaterOutputStream
This class implements a stream filter for writing compressed data in the GZIP file format.- Since:
- 1.1
-
-
Field Summary
Fields Modifier and Type Field Description protected CRC32
crc
CRC-32 of uncompressed data.-
Fields inherited from class java.util.zip.DeflaterOutputStream
buf, def
-
Fields inherited from class java.io.FilterOutputStream
out
-
-
Constructor Summary
Constructors Constructor Description GZIPOutputStream(OutputStream out)
Creates a new output stream with a default buffer size.GZIPOutputStream(OutputStream out, boolean syncFlush)
Creates a new output stream with a default buffer size and the specified flush mode.GZIPOutputStream(OutputStream out, int size)
Creates a new output stream with the specified buffer size.GZIPOutputStream(OutputStream out, int size, boolean syncFlush)
Creates a new output stream with the specified buffer size and flush mode.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
finish()
Finishes writing compressed data to the output stream without closing the underlying stream.void
write(byte[] buf, int off, int len)
Writes array of bytes to the compressed output stream.-
Methods inherited from class java.util.zip.DeflaterOutputStream
close, deflate, flush, write
-
Methods inherited from class java.io.FilterOutputStream
write
-
-
-
-
Field Detail
-
crc
protected CRC32 crc
CRC-32 of uncompressed data.
-
-
Constructor Detail
-
GZIPOutputStream
public GZIPOutputStream(OutputStream out, int size) throws IOException
Creates a new output stream with the specified buffer size.The new output stream instance is created as if by invoking the 3-argument constructor GZIPOutputStream(out, size, false).
- Parameters:
out
- the output streamsize
- the output buffer size- Throws:
IOException
- If an I/O error has occurred.IllegalArgumentException
- ifsize <= 0
-
GZIPOutputStream
public GZIPOutputStream(OutputStream out, int size, boolean syncFlush) throws IOException
Creates a new output stream with the specified buffer size and flush mode.- Parameters:
out
- the output streamsize
- the output buffer sizesyncFlush
- iftrue
invocation of the inheritedflush()
method of this instance flushes the compressor with flush modeDeflater.SYNC_FLUSH
before flushing the output stream, otherwise only flushes the output stream- Throws:
IOException
- If an I/O error has occurred.IllegalArgumentException
- ifsize <= 0
- Since:
- 1.7
-
GZIPOutputStream
public GZIPOutputStream(OutputStream out) throws IOException
Creates a new output stream with a default buffer size.The new output stream instance is created as if by invoking the 2-argument constructor GZIPOutputStream(out, false).
- Parameters:
out
- the output stream- Throws:
IOException
- If an I/O error has occurred.
-
GZIPOutputStream
public GZIPOutputStream(OutputStream out, boolean syncFlush) throws IOException
Creates a new output stream with a default buffer size and the specified flush mode.- Parameters:
out
- the output streamsyncFlush
- iftrue
invocation of the inheritedflush()
method of this instance flushes the compressor with flush modeDeflater.SYNC_FLUSH
before flushing the output stream, otherwise only flushes the output stream- Throws:
IOException
- If an I/O error has occurred.- Since:
- 1.7
-
-
Method Detail
-
write
public void write(byte[] buf, int off, int len) throws IOException
Writes array of bytes to the compressed output stream. This method will block until all the bytes are written.- Overrides:
write
in classDeflaterOutputStream
- Parameters:
buf
- the data to be writtenoff
- the start offset of the datalen
- the length of the data- Throws:
IOException
- If an I/O error has occurred.- See Also:
FilterOutputStream.write(int)
-
finish
public void finish() throws IOException
Finishes writing compressed data to the output stream without closing the underlying stream. Use this method when applying multiple filters in succession to the same output stream.- Overrides:
finish
in classDeflaterOutputStream
- Throws:
IOException
- if an I/O error has occurred
-
-