All Implemented Interfaces:
Closeable, Flushable, AutoCloseable

This class implements a stream filter for writing compressed data in the GZIP file format.

Since:
1.1
  • Field Summary

    Fields

    CRC-32 of uncompressed data.

  • Constructor Summary

    Constructors

    Creates a new output stream with a default buffer size.

    Creates a new output stream with a default buffer size and the specified flush mode.

    Creates a new output stream with the specified buffer size.

    Creates a new output stream with the specified buffer size and flush mode.

  • Method Summary

    void

    finish()

    Finishes writing compressed data to the output stream without closing the underlying stream.

    void

    write(byte[] buf, int off, int len)

    Writes array of bytes to the compressed output stream.

    Methods declared in class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

  • Field Details

    • crc

      CRC-32 of uncompressed data.

  • Constructor Details

    • GZIPOutputStream

      Creates a new output stream with the specified buffer size.

      The new output stream instance is created as if by invoking the 3-argument constructor GZIPOutputStream(out, size, false).

      Parameters:
      out - the output stream
      size - the output buffer size
      Throws:
      IOException - If an I/O error has occurred.
      IllegalArgumentException - if size <= 0
    • GZIPOutputStream

      Creates a new output stream with the specified buffer size and flush mode.

      Parameters:
      out - the output stream
      size - the output buffer size
      syncFlush - if true invocation of the inherited flush() method of this instance flushes the compressor with flush mode Deflater.SYNC_FLUSH before flushing the output stream, otherwise only flushes the output stream
      Throws:
      IOException - If an I/O error has occurred.
      IllegalArgumentException - if size <= 0
      Since:
      1.7
    • GZIPOutputStream

      Creates a new output stream with a default buffer size.

      The new output stream instance is created as if by invoking the 2-argument constructor GZIPOutputStream(out, false).

      Parameters:
      out - the output stream
      Throws:
      IOException - If an I/O error has occurred.
    • GZIPOutputStream

      Creates a new output stream with a default buffer size and the specified flush mode.

      Parameters:
      out - the output stream
      syncFlush - if true invocation of the inherited flush() method of this instance flushes the compressor with flush mode Deflater.SYNC_FLUSH before flushing the output stream, otherwise only flushes the output stream
      Throws:
      IOException - If an I/O error has occurred.
      Since:
      1.7
  • Method Details

    • write

      public void write(byte[] buf, int off, int len) throws IOException

      Writes array of bytes to the compressed output stream. This method will block until all the bytes are written.

      Overrides:
      write in class DeflaterOutputStream
      Parameters:
      buf - the data to be written
      off - the start offset of the data
      len - the length of the data
      Throws:
      IOException - If an I/O error has occurred.
      See Also:
    • finish

      Finishes writing compressed data to the output stream without closing the underlying stream. Use this method when applying multiple filters in succession to the same output stream.

      Overrides:
      finish in class DeflaterOutputStream
      Throws:
      IOException - if an I/O error has occurred