Package java.util.zip

Class GZIPOutputStream

  • All Implemented Interfaces:
    Closeable, Flushable, AutoCloseable

    public class GZIPOutputStream
    extends DeflaterOutputStream
    The GZIPOutputStream class is used to write data to a stream in the GZIP storage format.

    Example

    Using GZIPOutputStream is a little easier than ZipOutputStream because GZIP is only for compression, and is not a container for multiple files. This code creates a GZIP stream, similar to the gzip(1) utility.

     OutputStream os = ...
     byte[] bytes = ...
     GZIPOutputStream zos = new GZIPOutputStream(new BufferedOutputStream(os));
     try {
         zos.write(bytes);
     } finally {
         zos.close();
     }
     
    • Field Detail

      • crc

        protected CRC32 crc
        The checksum algorithm used when treating uncompressed data.
    • Constructor Detail

      • GZIPOutputStream

        public GZIPOutputStream​(OutputStream os)
                         throws IOException
        Constructs a new GZIPOutputStream to write data in GZIP format to the given stream.
        Throws:
        IOException
      • GZIPOutputStream

        public GZIPOutputStream​(OutputStream os,
                                int bufferSize)
                         throws IOException
        Constructs a new GZIPOutputStream to write data in GZIP format to the given stream with the given internal buffer size.
        Throws:
        IOException
      • GZIPOutputStream

        public GZIPOutputStream​(OutputStream os,
                                int bufferSize,
                                boolean syncFlush)
                         throws IOException
        Constructs a new GZIPOutputStream to write data in GZIP format to the given stream with the given internal buffer size and flushing behavior (see DeflaterOutputStream.flush()).
        Throws:
        IOException
        Since:
        1.7
    • Method Detail

      • finish

        public void finish()
                    throws IOException
        Indicates to the stream that all data has been written out, and any GZIP terminal data can now be written.
        Overrides:
        finish in class DeflaterOutputStream
        Throws:
        IOException - if an IOException occurs.
      • write

        public void write​(byte[] buffer,
                          int off,
                          int nbytes)
                   throws IOException
        Write up to nbytes of data from the given buffer, starting at offset off, to the underlying stream in GZIP format.
        Overrides:
        write in class DeflaterOutputStream
        Parameters:
        buffer - the buffer to write.
        off - the index of the first byte in buffer to write.
        nbytes - the number of bytes in buffer to write.
        Throws:
        IOException - If an error occurs during writing.