AI-generated Key Takeaways
-
GZIPInputStreamprovides a way to read data compressed in the GZIP file format. -
It extends
InflaterInputStreamand uses CRC-32 for data integrity checks. -
Two constructors are available: one with a custom buffer size and one with a default buffer size.
-
The
readmethod allows reading uncompressed data into a byte array. -
Closing the stream releases associated system resources using the
closemethod.
This class implements a stream filter for reading compressed data in the GZIP file format.
See Also
Constant Summary
| int | GZIP_MAGIC | GZIP header magic number. |
Field Summary
| protected CRC32 | crc | CRC-32 for uncompressed data. |
| protected boolean | eos | Indicates end of input stream. |
Inherited Field Summary
Public Constructor Summary
|
GZIPInputStream(InputStream in, int size)
Creates a new input stream with the specified buffer size.
|
|
Public Method Summary
| void |
close()
Closes this input stream and releases any system resources associated
with the stream.
|
| int |
read(byte[] buf, int off, int len)
Reads uncompressed data into an array of bytes.
|
Inherited Method Summary
Constants
public static final int GZIP_MAGIC
GZIP header magic number.
Fields
protected boolean eos
Indicates end of input stream.
Public Constructors
public GZIPInputStream (InputStream in, int size)
Creates a new input stream with the specified buffer size.
Parameters
| in | the input stream |
|---|---|
| size | the input buffer size |
Throws
| ZipException | if a GZIP format error has occurred or the compression method used is unsupported |
|---|---|
| IOException | if an I/O error has occurred |
| IllegalArgumentException | if size <= 0
|
public GZIPInputStream (InputStream in)
Creates a new input stream with a default buffer size.
Parameters
| in | the input stream |
|---|
Throws
| ZipException | if a GZIP format error has occurred or the compression method used is unsupported |
|---|---|
| IOException | if an I/O error has occurred |
Public Methods
public void close ()
Closes this input stream and releases any system resources associated with the stream.
Throws
| IOException | if an I/O error has occurred |
|---|
public int read (byte[] buf, int off, int len)
Reads uncompressed data into an array of bytes. If len is not
zero, the method will block until some input can be decompressed; otherwise,
no bytes are read and 0 is returned.
Parameters
| buf | the buffer into which the data is read |
|---|---|
| off | the start offset in the destination array b |
| len | the maximum number of bytes read |
Returns
- the actual number of bytes read, or -1 if the end of the compressed input stream is reached
Throws
| NullPointerException | If buf is null. |
|---|---|
| IndexOutOfBoundsException | If off is negative,
len is negative, or len is greater than
buf.length - off |
| ZipException | if the compressed input data is corrupt. |
| IOException | if an I/O error has occurred. |