DeflaterOutputStream (Java 2 Platform SE 5.0) (original) (raw)


java.util.zip

Class DeflaterOutputStream

java.lang.Object extended by java.io.OutputStream extended by java.io.FilterOutputStream extended by java.util.zip.DeflaterOutputStream

All Implemented Interfaces:

Closeable, Flushable

Direct Known Subclasses:

GZIPOutputStream, ZipOutputStream


public class DeflaterOutputStream

extends FilterOutputStream

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:

Deflater


Field Summary
protected byte[] buf Output buffer for writing compressed data.
protected Deflater def Compressor for this stream.
Fields inherited from class java.io.FilterOutputStream
out
Constructor Summary
DeflaterOutputStream(OutputStream out) Creates a new output stream with a default compressor and buffer size.
[DeflaterOutputStream](../../../java/util/zip/DeflaterOutputStream.html#DeflaterOutputStream%28java.io.OutputStream, java.util.zip.Deflater%29)(OutputStream out,Deflater def) Creates a new output stream with the specified compressor and a default buffer size.
[DeflaterOutputStream](../../../java/util/zip/DeflaterOutputStream.html#DeflaterOutputStream%28java.io.OutputStream, java.util.zip.Deflater, int%29)(OutputStream out,Deflater def, int size) Creates a new output stream with the specified compressor and buffer size.
Method Summary
void close() Writes remaining compressed data to the output stream and closes the underlying stream.
protected void deflate() Writes next block of compressed data to the output stream.
void finish() Finishes writing compressed data to the output stream without closing the underlying stream.
void [write](../../../java/util/zip/DeflaterOutputStream.html#write%28byte[], int, int%29)(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.
Methods inherited from class java.io.FilterOutputStream
flush, write
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, [wait](../../../java/lang/Object.html#wait%28long, int%29)
Field Detail

def

protected Deflater def

Compressor for this stream.


buf

protected byte[] buf

Output buffer for writing compressed data.

Constructor Detail

DeflaterOutputStream

public DeflaterOutputStream(OutputStream out, Deflater def, int size)

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

Parameters:

out - the output stream

def - the compressor ("deflater")

size - the output buffer size

Throws:

[IllegalArgumentException](../../../java/lang/IllegalArgumentException.html "class in java.lang") - if size is <= 0


DeflaterOutputStream

public DeflaterOutputStream(OutputStream out, Deflater def)

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

Parameters:

out - the output stream

def - the compressor ("deflater")


DeflaterOutputStream

public DeflaterOutputStream(OutputStream out)

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

Parameters:

out - the output stream

Method Detail

write

public void write(int b) throws IOException

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

Overrides:

[write](../../../java/io/FilterOutputStream.html#write%28int%29) in class [FilterOutputStream](../../../java/io/FilterOutputStream.html "class in java.io")

Parameters:

b - the byte to be written

Throws:

[IOException](../../../java/io/IOException.html "class in java.io") - if an I/O error has occurred


write

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

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

Overrides:

[write](../../../java/io/FilterOutputStream.html#write%28byte[], int, int%29) in class [FilterOutputStream](../../../java/io/FilterOutputStream.html "class in java.io")

Parameters:

b - the data to be written

off - the start offset of the data

len - the length of the data

Throws:

[IOException](../../../java/io/IOException.html "class in java.io") - if an I/O error has occurred

See Also:

FilterOutputStream.write(int)


finish

public void finish() throws IOException

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](../../../java/io/IOException.html "class in java.io") - if an I/O error has occurred


close

public void close() throws IOException

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

Specified by:

[close](../../../java/io/Closeable.html#close%28%29) in interface [Closeable](../../../java/io/Closeable.html "interface in java.io")

Overrides:

[close](../../../java/io/FilterOutputStream.html#close%28%29) in class [FilterOutputStream](../../../java/io/FilterOutputStream.html "class in java.io")

Throws:

[IOException](../../../java/io/IOException.html "class in java.io") - if an I/O error has occurred

See Also:

FilterOutputStream.flush(), FilterOutputStream.out


deflate

protected void deflate() throws IOException

Writes next block of compressed data to the output stream.

Throws:

[IOException](../../../java/io/IOException.html "class in java.io") - if an I/O error has occurred



Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright © 2004, 2010 Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.