java.lang.Object
java.io.InputStream
java.io.FilterInputStream
java.util.zip.InflaterInputStream
java.util.zip.GZIPInputStream
- All Implemented Interfaces:
Closeable
,AutoCloseable
public class GZIPInputStream extends InflaterInputStream
This class implements a stream filter for reading compressed data in
the GZIP file format.
- Since:
- 1.1
- See Also:
InflaterInputStream
-
Field Summary
Fields Modifier and Type Field Description protected CRC32
crc
CRC-32 for uncompressed data.protected boolean
eos
Indicates end of input stream.static int
GZIP_MAGIC
GZIP header magic number. -
Constructor Summary
Constructors Constructor Description GZIPInputStream(InputStream in)
Creates a new input stream with a default buffer size.GZIPInputStream(InputStream in, int size)
Creates a new input stream with the specified buffer size. -
Method Summary
Methods declared in class java.util.zip.InflaterInputStream
available, fill, mark, markSupported, read, reset, skip
Methods declared in class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
Field Details
-
crc
CRC-32 for uncompressed data. -
eos
protected boolean eosIndicates end of input stream. -
GZIP_MAGIC
public static final int GZIP_MAGICGZIP header magic number.- See Also:
- Constant Field Values
-
-
Constructor Details
-
GZIPInputStream
Creates a new input stream with the specified buffer size.- Parameters:
in
- the input streamsize
- the input buffer size- Throws:
ZipException
- if a GZIP format error has occurred or the compression method used is unsupportedIOException
- if an I/O error has occurredIllegalArgumentException
- ifsize <= 0
-
GZIPInputStream
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 unsupportedIOException
- if an I/O error has occurred
-
-
Method Details
-
read
Reads uncompressed data into an array of bytes. Iflen
is not zero, the method will block until some input can be decompressed; otherwise, no bytes are read and0
is returned.- Overrides:
read
in classInflaterInputStream
- Parameters:
buf
- the buffer into which the data is readoff
- the start offset in the destination arrayb
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
- Ifbuf
isnull
.IndexOutOfBoundsException
- Ifoff
is negative,len
is negative, orlen
is greater thanbuf.length - off
ZipException
- if the compressed input data is corrupt.IOException
- if an I/O error has occurred.- See Also:
FilterInputStream.in
-
close
Closes this input stream and releases any system resources associated with the stream.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classInflaterInputStream
- Throws:
IOException
- if an I/O error has occurred- See Also:
FilterInputStream.in
-