FilterOutputStream

public class FilterOutputStream
extends OutputStream

java.lang.Object
   ↳ java.io.OutputStream
     ↳ java.io.FilterOutputStream
Base64OutputStream An OutputStream that does Base64 encoding on the data written to it, writing the resulting data to another OutputStream. 
BufferedOutputStream The class implements a buffered output stream. 
CheckedOutputStream An output stream that also maintains a checksum of the data being written. 
CipherOutputStream A CipherOutputStream is composed of an OutputStream and a Cipher so that write() methods first process the data before writing them out to the underlying OutputStream. 
DataOutputStream A data output stream lets an application write primitive Java data types to an output stream in a portable way. 
DeflaterOutputStream This class implements an output stream filter for compressing data in the "deflate" compression format. 
DigestOutputStream A transparent stream that updates the associated message digest using the bits going through the stream. 
InflaterOutputStream Implements an output stream filter for uncompressing data stored in the "deflate" compression format. 
PrintStream A PrintStream adds functionality to another output stream, namely the ability to print representations of various data values conveniently. 
GZIPOutputStream This class implements a stream filter for writing compressed data in the GZIP file format. 
JarOutputStream The JarOutputStream class is used to write the contents of a JAR file to any output stream. 
ZipOutputStream This class implements an output stream filter for writing files in the ZIP file format. 


This class is the superclass of all classes that filter output streams. These streams sit on top of an already existing output stream (the underlying output stream) which it uses as its basic sink of data, but possibly transforming the data along the way or providing additional functionality.

The class FilterOutputStream itself simply overrides all methods of OutputStream with versions that pass all requests to the underlying output stream. Subclasses of FilterOutputStream may further override some of these methods as well as provide additional methods and fields.

Summary

Fields

protected OutputStream out

The underlying output stream to be filtered.

Public constructors

FilterOutputStream(OutputStream out)

Creates an output stream filter built on top of the specified underlying output stream.

Public methods

void close()

Closes this output stream and releases any system resources associated with the stream.

void flush()

Flushes this output stream and forces any buffered output bytes to be written out to the stream.

void write(byte[] b)

Writes b.length bytes to this output stream.

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

Writes len bytes from the specified byte array starting at offset off to this output stream.

void write(int b)

Writes the specified byte to this output stream.

Inherited methods

void close()

Closes this output stream and releases any system resources associated with this stream.

void flush()

Flushes this output stream and forces any buffered output bytes to be written out.

static OutputStream nullOutputStream()

Returns a new OutputStream which discards all bytes.

void write(byte[] b)

Writes b.length bytes from the specified byte array to this output stream.

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

Writes len bytes from the specified byte array starting at offset off to this output stream.

abstract void write(int b)

Writes the specified byte to this output stream.

Object clone()

Creates and returns a copy of this object.

boolean equals(Object obj)

Indicates whether some other object is "equal to" this one.

void finalize()

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

final Class<?> getClass()

Returns the runtime class of this Object.

int hashCode()

Returns a hash code value for the object.

final void notify()

Wakes up a single thread that is waiting on this object's monitor.

final void notifyAll()

Wakes up all threads that are waiting on this object's monitor.

String toString()

Returns a string representation of the object.

final void wait(long timeoutMillis, int nanos)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait(long timeoutMillis)

Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

final void wait()

Causes the current thread to wait until it is awakened, typically by being notified or interrupted.

abstract void close()

Closes this stream and releases any system resources associated with it.

abstract void flush()

Flushes this stream by writing any buffered output to the underlying stream.

abstract void close()

Closes this resource, relinquishing any underlying resources.

Fields

out

Added in API level 1
protected OutputStream out

The underlying output stream to be filtered.

Public constructors

FilterOutputStream

Added in API level 1
public FilterOutputStream (OutputStream out)

Creates an output stream filter built on top of the specified underlying output stream.

Parameters
out OutputStream: the underlying output stream to be assigned to the field this.out for later use, or null if this instance is to be created without an underlying stream.

Public methods

close

Added in API level 1
public void close ()

Closes this output stream and releases any system resources associated with the stream.

When not already closed, the close method of FilterOutputStream calls its flush method, and then calls the close method of its underlying output stream.

Throws
IOException if an I/O error occurs.

See also:

flush

Added in API level 1
public void flush ()

Flushes this output stream and forces any buffered output bytes to be written out to the stream.

The flush method of FilterOutputStream calls the flush method of its underlying output stream.

Throws
IOException if an I/O error occurs.

See also:

write

Added in API level 1
public void write (byte[] b)

Writes b.length bytes to this output stream.

The write method of FilterOutputStream calls its write method of three arguments with the arguments b, 0, and b.length.

Note that this method does not call the one-argument write method of its underlying output stream with the single argument b.

Parameters
b byte: the data to be written.

Throws
IOException if an I/O error occurs.

write

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

Writes len bytes from the specified byte array starting at offset off to this output stream.

The write method of FilterOutputStream calls the write method of one argument on each byte to output.

Note that this method does not call the write method of its underlying output stream with the same arguments. Subclasses of FilterOutputStream should provide a more efficient implementation of this method.

Parameters
b byte: the data.

off int: the start offset in the data.

len int: the number of bytes to write.

Throws
IOException if an I/O error occurs.

See also:

write

Added in API level 1
public void write (int b)

Writes the specified byte to this output stream.

The write method of FilterOutputStream calls the write method of its underlying output stream, that is, it performs out.write(b).

Implements the abstract write method of OutputStream.

Parameters
b int: the byte.

Throws
IOException if an I/O error occurs.