Class GZIPInputStream

java.lang.Object
java.io.InputStream
java.io.FilterInputStream
java.util.zip.InflaterInputStream
java.util.zip.GZIPInputStream
All Implemented Interfaces:
Closeable,AutoCloseable

public classGZIPInputStreamextendsInflaterInputStream
This class implements a stream filter for reading compressed data in the GZIP file format.
Since:
1.1
See Also:
  • Field Details

    • crc

      protected CRC32 crc
      CRC-32 for uncompressed data.
    • eos

      protected boolean eos
      Indicates end of input stream.
    • GZIP_MAGIC

      public static final int GZIP_MAGIC
      GZIP header magic number.
      See Also:
  • Constructor Details

  • Method Details

    • read

      public int read(byte[] buf, int off, int len) throwsIOException
      Reads uncompressed data into an array of bytes, returning the number of inflated bytes. Iflen is not zero, the method will block until some input can be decompressed; otherwise, no bytes are read and0 is returned.

      If this method returns a nonzero integern thenbuf[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 theInputStream superclass, so an implementation is free to modify these elements during the inflate operation. If this method returns-1 or throws an exception then the content ofbuf[off] throughbuf[off+len -1] is undefined.

      Overrides:
      read in class InflaterInputStream
      Parameters:
      buf - the buffer into which the data is read
      off - the start offset in the destination arraybuf
      len - 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 - 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:
    • close

      public void close() throwsIOException
      Closes this input stream and releases any system resources associated with the stream.
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Overrides:
      close in class InflaterInputStream
      Throws:
      IOException - if an I/O error has occurred
      See Also: