Java Fundamental Classes Reference

Previous Chapter 11
The java.io Package
Next
 

FilterReader

Name

FilterReader

Synopsis

Class Name:

java.io.FilterReader

Superclass:

java.io.Reader

Immediate Subclasses:

java.io.PushbackReader

Interfaces Implemented:

None

Availability:

New as of JDK 1.1

Description

The FilterReader class is the superclass of all of the reader classes that filter input. A subclass of FilterReader works by wrapping an existing reader, called the underlying reader, and providing additional functionality. The methods of FilterReader simply override the methods of Reader with versions that call the corresponding methods of the underlying reader.

FilterReader cannot be instantiated directly; it must be subclassed. An instance of a subclass of FilterReader is constructed with another Reader object. The methods of a subclass of FilterReader should override some methods in order to extend their behavior or provide some sort of filtering.

FilterReader is like FilterInputStream, except that it deals with a character stream instead of a byte stream.

Class Summary

public abstract class java.io.FilterReader extends java.io.Reader {
  // Variables
  protected Reader in;
  // Constructors
  protected FilterReader(Reader in);
  // Instance Methods
  public void close();
  public void mark(int readAheadLimit);
  public boolean markSupported();
  public int read();
  public int read(char[] cbuf, int off, int len);
  public boolean ready();
  public void reset();
  public long skip(long n);
}

Variables

in

protected Reader in

Description

The underlying reader that this FilterReader wraps or filters.

Constructors

FilterReader

protected FilterReader(Reader in)

Parameters

in

The input reader to filter.

Description

This constructor creates a FilterReader that gets data from in.

Instance Methods

close

public void close() throws IOException

Throws

IOException

If any kind of I/O error occurs.

Overrides

Reader.close()

Description

This method calls the close() method of the underlying reader, which releases any system resources associated with this object.

mark

public void mark(int readAheadLimit) throws IOException

Parameters

readAheadLimit

The maximum number of characters that can be read before the saved position becomes invalid.

Throws

IOException

If any kind of I/O error occurs.

Overrides

Reader.mark()

Description

This method calls the mark() method of the underlying reader. If the underlying reader supports mark() and reset(), this method causes the FilterReader to remember its current position. A subsequent call to reset() causes the object to return to that saved position, and thus re-read a portion of the input.

markSupported

public boolean markSupported()

Returns

true if this reader supports mark() and reset(); false otherwise.

Overrides

Reader.markSupported()

Description

This method calls the markSupported() method of the underlying reader and returns the result.

read

public int read() throws IOException

Returns

The next character of data or -1 if the end of the stream is encountered.

Throws

IOException

If any kind of I/O error occurs.

Overrides

Reader.read()

Description

This method calls the read() method of the underlying reader and returns the result. The method blocks until data is available, the end of the stream is detected, or an exception is thrown.

public int read(char[] cbuf, int off, int len) throws IOException

Parameters

cbuf

An array of characters to be filled from the stream.

off

An offset into the array.

len

The number of characters to read.

Returns

The actual number of characters read or -1 if the end of the stream is encountered immediately.

Throws

IOException

If any kind of I/O error occurs.

Overrides

Reader.read(char[], int, int)

Description

This method reads up to len characters of input into the given array starting at index off. It does this by calling the read(char[], int, int) method of the underlying reader and returning the result. The method blocks until some data is available.

ready

public boolean ready() throws IOException

Returns

A boolean value that indicates whether the reader is ready to be read.

Throws

IOException

If the stream is closed.

Overrides

Reader.ready()

Description

This method calls the ready() method of the underlying reader and returns the result. If the underlying stream is ready, this method returns true. The underlying stream is ready if the next read() is guaranteed not to block.

reset

public void reset() throws IOException

Throws

IOException

If the stream is closed, mark() has not been called, or the saved position has been invalidated.

Overrides

Reader.reset()

Description

This method calls the reset() method of the underlying reader. If the underlying reader supports mark() and reset(), this method sets the position of the FilteredReader to a position that was saved by a previous call to mark(). Subsequent characters read from this FilteredReader will begin from the saved position and continue normally.

skip

public long skip(long n) throws IOException

Parameters

n

The number of characters to skip.

Returns

The actual number of characters skipped.

Throws

IOException

If any kind of I/O error occurs.

Overrides

Reader.skip()

Description

This method skips n characters of input. It calls the skip() method of the underlying reader.

Inherited Methods

Method

Inherited From

Method

Inherited From

clone()

Object

equals(Object)

Object

finalize()

Object

getClass()

Object

hashCode()

Object

notify()

Object

notifyAll()

Object

toString()

Object

wait()

Object

wait(long)

Object

wait(long, int)

Object

   

See Also

FilterInputStream, IOException, PushbackReader, Reader


Previous Home Next
FilterOutputStream Book Index FilterWriter

Java in a Nutshell Java Language Reference Java AWT Java Fundamental Classes Exploring Java