Module java.base
Package java.util.zip

Class InflaterOutputStream

    • Field Summary

      Fields
      Modifier and Type Field Description
      protected byte[] buf
      Output buffer for writing uncompressed data.
      protected Inflater inf
      Decompressor for this stream.
    • Method Summary

      All Methods
      Modifier and Type Method Description
      void close ​()
      Writes any remaining uncompressed data to the output stream and closes the underlying output stream.
      void finish ​()
      Finishes writing uncompressed data to the output stream without closing the underlying stream.
      void flush ​()
      Flushes this output stream, forcing any pending buffered output bytes to be written.
      void write ​(byte[] b, int off, int len)
      Writes an array of bytes to the uncompressed output stream.
      void write ​(int b)
      Writes a byte to the uncompressed output stream.
    • Field Detail

      • inf

        protected final Inflater inf
        Decompressor for this stream.
      • buf

        protected final byte[] buf
        Output buffer for writing uncompressed data.
    • Constructor Detail

      • InflaterOutputStream

        public InflaterOutputStream​(OutputStream out)
        Creates a new output stream with a default decompressor and buffer size.
        Parameters:
        out - output stream to write the uncompressed data to
        Throws:
        NullPointerException - if out is null
      • InflaterOutputStream

        public InflaterOutputStream​(OutputStream out,
         Inflater infl)
        Creates a new output stream with the specified decompressor and a default buffer size.
        Parameters:
        out - output stream to write the uncompressed data to
        infl - decompressor ("inflater") for this stream
        Throws:
        NullPointerException - if out or infl is null
      • InflaterOutputStream

        public InflaterOutputStream​(OutputStream out,
         Inflater infl,
         int bufLen)
        Creates a new output stream with the specified decompressor and buffer size.
        Parameters:
        out - output stream to write the uncompressed data to
        infl - decompressor ("inflater") for this stream
        bufLen - decompression buffer size
        Throws:
        IllegalArgumentException - if bufLen <= 0
        NullPointerException - if out or infl is null
    • Method Detail

      • finish

        public void finish​()
         throws IOException 
        Finishes writing uncompressed data to the output stream without closing the underlying stream. Use this method when applying multiple filters in succession to the same output stream.
        Throws:
        IOException - if an I/O error occurs or this stream is already closed
      • write

        public void write​(int b)
         throws IOException 
        Writes a byte to the uncompressed output stream.
        Overrides:
        write in class FilterOutputStream
        Parameters:
        b - a single byte of compressed data to decompress and write to the output stream
        Throws:
        IOException - if an I/O error occurs or this stream is already closed
        ZipException - if a compression (ZIP) format error occurs
      • write

        public void write​(byte[] b,
         int off,
         int len)
         throws IOException 
        Writes an array of bytes to the uncompressed output stream.
        Overrides:
        write in class FilterOutputStream
        Parameters:
        b - buffer containing compressed data to decompress and write to the output stream
        off - starting offset of the compressed data within b
        len - number of bytes to decompress from b
        Throws:
        IndexOutOfBoundsException - if off < 0, or if len < 0, or if len > b.length - off
        IOException - if an I/O error occurs or this stream is already closed
        NullPointerException - if b is null
        ZipException - if a compression (ZIP) format error occurs
        See Also:
        FilterOutputStream.write(int)