Module java.base
Package java.util.zip

Class InflaterInputStream

    • Field Detail

      • inf

        protected Inflater inf
        Decompressor for this stream.
      • buf

        protected byte[] buf
        Input buffer for decompression.
      • len

        protected int len
        Length of input buffer.
    • Constructor Detail

      • InflaterInputStream

        public InflaterInputStream​(InputStream in,Inflater inf,                           int size)
        Creates a new input stream with the specified decompressor and buffer size.
        Parameters:
        in - the input stream
        inf - the decompressor ("inflater")
        size - the input buffer size
        Throws:
        IllegalArgumentException - ifsize <= 0
      • InflaterInputStream

        public InflaterInputStream​(InputStream in,Inflater inf)
        Creates a new input stream with the specified decompressor and a default buffer size.
        Parameters:
        in - the input stream
        inf - the decompressor ("inflater")
      • InflaterInputStream

        public InflaterInputStream​(InputStream in)
        Creates a new input stream with a default decompressor and buffer size.
        Parameters:
        in - the input stream
    • Method Detail

      • read

        public int read()         throwsIOException
        Reads a byte of uncompressed data. This method will block until enough input is available for decompression.
        Overrides:
        read in class FilterInputStream
        Returns:
        the byte read, or -1 if end of compressed input is reached
        Throws:
        IOException - if an I/O error has occurred
        See Also:
        FilterInputStream.in
      • read

        public int read​(byte[] b,                int off,                int len)         throwsIOException
        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 class FilterInputStream
        Parameters:
        b - the buffer into which the data is read
        off - 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 is reached or a preset dictionary is needed
        Throws:
        NullPointerException - Ifb isnull.
        IndexOutOfBoundsException - Ifoff is negative,len is negative, orlen is greater thanb.length - off
        ZipException - if a ZIP format error has occurred
        IOException - if an I/O error has occurred
        See Also:
        FilterInputStream.in
      • available

        public int available()              throwsIOException
        Returns 0 after EOF has been reached, otherwise always return 1.

        Programs should not count on this method to return the actual number of bytes that could be read without blocking.

        Overrides:
        available in class FilterInputStream
        Returns:
        1 before EOF and 0 after EOF.
        Throws:
        IOException - if an I/O error occurs.
      • fill

        protected void fill()             throwsIOException
        Fills input buffer with more data to decompress.
        Throws:
        IOException - if an I/O error has occurred
      • markSupported

        public boolean markSupported()
        Tests if this input stream supports themark andreset methods. ThemarkSupported method ofInflaterInputStream returnsfalse.
        Overrides:
        markSupported in class FilterInputStream
        Returns:
        aboolean indicating if this stream type supports themark andreset methods.
        See Also:
        InputStream.mark(int),InputStream.reset()
      • mark

        public void mark​(int readlimit)
        Marks the current position in this input stream.

        Themark method ofInflaterInputStream does nothing.

        Overrides:
        mark in class FilterInputStream
        Parameters:
        readlimit - the maximum limit of bytes that can be read before the mark position becomes invalid.
        See Also:
        InputStream.reset()