Class GZIPInputStream
java.lang.Object
java.io.InputStream
java.io.FilterInputStream
java.util.zip.InflaterInputStream
java.util.zip.GZIPInputStream
- All Implemented Interfaces:
Closeable,AutoCloseable
This class implements a stream filter for reading compressed data in the GZIP file format.
- Since:
- 1.1
- See Also:
Field Summary
FieldsModifier and TypeFieldDescriptionprotectedCRC32CRC-32 for uncompressed data.protected booleanIndicates end of input stream.static final intGZIP header magic number.Fields declared in class java.util.zip.InflaterInputStream
buf,inf,lenFields declared in class java.io.FilterInputStream
inConstructor Summary
ConstructorsConstructorDescriptionCreates 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,skipMethods declared in class java.io.FilterInputStream
readMethods 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
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 unsupportedNullPointerException- ifinis nullIOException- 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 unsupportedNullPointerException- ifinis nullIOException- if an I/O error has occurred
Method Details
read
Reads uncompressed data into an array of bytes, returning the number of inflated bytes. Iflenis not zero, the method will block until some input can be decompressed; otherwise, no bytes are read and0is returned.If this method returns a nonzero integern then
buf[off]throughbuf[off+n-1]contain the uncompressed data. The content of elementsbuf[off+n]throughbuf[off+len-1]is undefined, contrary to the specification of theInputStreamsuperclass, so an implementation is free to modify these elements during the inflate operation. If this method returns-1or throws an exception then the content ofbuf[off]throughbuf[off+len-1]is undefined.- Overrides:
readin classInflaterInputStream- Parameters:
buf- the buffer into which the data is readoff- the start offset in the destination arraybuflen- the maximum number of bytes read- Returns:
- the actual number of bytes inflated, or -1 if the end of the compressed input stream is reached
- Throws:
NullPointerException- Ifbufisnull.IndexOutOfBoundsException- Ifoffis negative,lenis negative, orlenis greater thanbuf.length - offZipException- if the compressed input data is corrupt.IOException- if an I/O error has occurred.- See Also:
close
Closes this input stream and releases any system resources associated with the stream.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classInflaterInputStream- Throws:
IOException- if an I/O error has occurred- See Also: