Skip to content

Most visited

Recently visited

navigation

DeflaterOutputStream

public class DeflaterOutputStream
extends FilterOutputStream

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


This class implements an output stream filter for compressing data in the "deflate" compression format. It is also used as the basis for other types of compression filters, such as GZIPOutputStream.

See also:

Summary

Fields

protected byte[] buf

Output buffer for writing compressed data.

protected Deflater def

Compressor for this stream.

Inherited fields

From class java.io.FilterOutputStream

Public constructors

DeflaterOutputStream(OutputStream out, Deflater def, int size, boolean syncFlush)

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

DeflaterOutputStream(OutputStream out, Deflater def, int size)

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

DeflaterOutputStream(OutputStream out, Deflater def, boolean syncFlush)

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

DeflaterOutputStream(OutputStream out, Deflater def)

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

DeflaterOutputStream(OutputStream out, boolean syncFlush)

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

DeflaterOutputStream(OutputStream out)

Creates a new output stream with a default compressor and buffer size.

Public methods

void close()

Writes remaining compressed data to the output stream and closes the underlying stream.

void finish()

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

void flush()

Flushes the compressed output stream.

void write(byte[] b, int off, int len)

Writes an array of bytes to the compressed output stream.

void write(int b)

Writes a byte to the compressed output stream.

Protected methods

void deflate()

Writes next block of compressed data to the output stream.

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

buf

Added in API level 1
byte[] buf

Output buffer for writing compressed data.

def

Added in API level 1
Deflater def

Compressor for this stream.

Public constructors

DeflaterOutputStream

Added in API level 19
DeflaterOutputStream (OutputStream out, 
                Deflater def, 
                int size, 
                boolean syncFlush)

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

Parameters
out OutputStream: the output stream
def Deflater: the compressor ("deflater")
size int: the output buffer size
syncFlush boolean: if true the flush() method of this instance flushes the compressor with flush mode SYNC_FLUSH before flushing the output stream, otherwise only flushes the output stream
Throws
IllegalArgumentException if size is <= 0

DeflaterOutputStream

Added in API level 1
DeflaterOutputStream (OutputStream out, 
                Deflater def, 
                int size)

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

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

Parameters
out OutputStream: the output stream
def Deflater: the compressor ("deflater")
size int: the output buffer size
Throws
IllegalArgumentException if size is <= 0

DeflaterOutputStream

Added in API level 19
DeflaterOutputStream (OutputStream out, 
                Deflater def, 
                boolean syncFlush)

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

Parameters
out OutputStream: the output stream
def Deflater: the compressor ("deflater")
syncFlush boolean: if true the flush() method of this instance flushes the compressor with flush mode SYNC_FLUSH before flushing the output stream, otherwise only flushes the output stream

DeflaterOutputStream

Added in API level 1
DeflaterOutputStream (OutputStream out, 
                Deflater def)

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

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

Parameters
out OutputStream: the output stream
def Deflater: the compressor ("deflater")

DeflaterOutputStream

Added in API level 19
DeflaterOutputStream (OutputStream out, 
                boolean syncFlush)

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

Parameters
out OutputStream: the output stream
syncFlush boolean: if true the flush() method of this instance flushes the compressor with flush mode SYNC_FLUSH before flushing the output stream, otherwise only flushes the output stream

DeflaterOutputStream

Added in API level 1
DeflaterOutputStream (OutputStream out)

Creates a new output stream with a default compressor and buffer size.

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

Parameters
out OutputStream: the output stream

Public methods

close

Added in API level 1
void close ()

Writes remaining compressed data to the output stream and closes the underlying stream.

Throws
IOException if an I/O error has occurred

finish

Added in API level 1
void 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.

Throws
IOException if an I/O error has occurred

flush

Added in API level 1
void flush ()

Flushes the compressed output stream. If syncFlush is true when this compressed output stream is constructed, this method first flushes the underlying compressor with the flush mode SYNC_FLUSH to force all pending data to be flushed out to the output stream and then flushes the output stream. Otherwise this method only flushes the output stream without flushing the compressor.

Throws
IOException if an I/O error has occurred

write

Added in API level 1
void write (byte[] b, 
                int off, 
                int len)

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

Parameters
b byte: the data to be written
off int: the start offset of the data
len int: the length of the data
Throws
IOException if an I/O error has occurred

write

Added in API level 1
void write (int b)

Writes a byte to the compressed output stream. This method will block until the byte can be written.

Parameters
b int: the byte to be written
Throws
IOException if an I/O error has occurred

Protected methods

deflate

Added in API level 1
void deflate ()

Writes next block of compressed data to the output stream.

Throws
IOException if an I/O error has occurred
This site uses cookies to store your preferences for site-specific language and display options.

Hooray!

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.