to top
Android APIs
public class

DeflaterOutputStream

extends FilterOutputStream
java.lang.Object
   ↳ java.io.OutputStream
     ↳ java.io.FilterOutputStream
       ↳ java.util.zip.DeflaterOutputStream
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

This class provides an implementation of FilterOutputStream that compresses data using the DEFLATE algorithm. Basically it wraps the Deflater class and takes care of the buffering.

See Also

Summary

Fields
protected byte[] buf The buffer for the data to be written to.
protected Deflater def The deflater used.
[Expand]
Inherited Fields
From class java.io.FilterOutputStream
Public Constructors
DeflaterOutputStream(OutputStream os)
Constructs a new instance with a default-constructed Deflater.
DeflaterOutputStream(OutputStream os, Deflater def)
Constructs a new instance with the given Deflater.
DeflaterOutputStream(OutputStream os, Deflater def, int bufferSize)
Constructs a new instance with the given Deflater and buffer size.
DeflaterOutputStream(OutputStream os, boolean syncFlush)
Constructs a new instance with the given flushing behavior (see flush()).
DeflaterOutputStream(OutputStream os, Deflater def, boolean syncFlush)
Constructs a new instance with the given Deflater and flushing behavior (see flush()).
DeflaterOutputStream(OutputStream os, Deflater def, int bufferSize, boolean syncFlush)
Constructs a new instance with the given Deflater, buffer size, and flushing behavior (see flush()).
Public Methods
void close()
Writes any unwritten compressed data to the underlying stream, the closes all underlying streams.
void finish()
Writes any unwritten data to the underlying stream.
void flush()
Flushes the underlying stream.
void write(byte[] buffer, int offset, int byteCount)
Compresses byteCount bytes of data from buf starting at offset and writes it to the underlying stream.
void write(int i)
Writes one byte to the target stream.
Protected Methods
void deflate()
Compress the data in the input buffer and write it to the underlying stream.
[Expand]
Inherited Methods
From class java.io.FilterOutputStream
From class java.io.OutputStream
From class java.lang.Object
From interface java.io.Closeable
From interface java.io.Flushable
From interface java.lang.AutoCloseable

Fields

protected byte[] buf

Added in API level 1

The buffer for the data to be written to.

protected Deflater def

Added in API level 1

The deflater used.

Public Constructors

public DeflaterOutputStream (OutputStream os)

Added in API level 1

Constructs a new instance with a default-constructed Deflater.

public DeflaterOutputStream (OutputStream os, Deflater def)

Added in API level 1

Constructs a new instance with the given Deflater.

public DeflaterOutputStream (OutputStream os, Deflater def, int bufferSize)

Added in API level 1

Constructs a new instance with the given Deflater and buffer size.

public DeflaterOutputStream (OutputStream os, boolean syncFlush)

Added in API level 19

Constructs a new instance with the given flushing behavior (see flush()).

public DeflaterOutputStream (OutputStream os, Deflater def, boolean syncFlush)

Added in API level 19

Constructs a new instance with the given Deflater and flushing behavior (see flush()).

public DeflaterOutputStream (OutputStream os, Deflater def, int bufferSize, boolean syncFlush)

Added in API level 19

Constructs a new instance with the given Deflater, buffer size, and flushing behavior (see flush()).

Public Methods

public void close ()

Added in API level 1

Writes any unwritten compressed data to the underlying stream, the closes all underlying streams. This stream can no longer be used after close() has been called.

Throws
IOException If an error occurs while closing the data compression process.

public void finish ()

Added in API level 1

Writes any unwritten data to the underlying stream. Does not close the stream.

Throws
IOException If an error occurs.

public void flush ()

Added in API level 1

Flushes the underlying stream. This flushes only the bytes that can be compressed at the highest level.

For deflater output streams constructed with the syncFlush parameter set to true, this first flushes all outstanding data so that it may be immediately read by its recipient. Doing so may degrade compression but improve interactive behavior.

Throws
IOException

public void write (byte[] buffer, int offset, int byteCount)

Added in API level 1

Compresses byteCount bytes of data from buf starting at offset and writes it to the underlying stream.

Parameters
buffer the buffer to write.
offset the index of the first byte in buffer to write.
byteCount the number of bytes in buffer to write.
Throws
IOException If an error occurs during writing.

public void write (int i)

Added in API level 1

Writes one byte to the target stream. Only the low order byte of the integer oneByte is written.

Parameters
i the byte to be written.
Throws
IOException

Protected Methods

protected void deflate ()

Added in API level 1

Compress the data in the input buffer and write it to the underlying stream.

Throws
IOException If an error occurs during deflation.