The class contains some other input stream, which it uses as its basic source of data, possibly transforming the data along the way or providing additional functionality. Following are the important points about FilterInputStream −

  • The class itself simply overrides all methods of InputStream with versions that pass all requests to the contained input stream.

  • The Subclasses of this class may further override some of these methods and may also provide additional methods and fields.

Class declaration

Following is the declaration for class −

public class FilterInputStream
   extends InputStream


Following are the fields for class −

  • protected InputStream in − This is the input stream to be filtered.

Class constructors

Sr.No. Constructor & Description

protected FilterInputStream(InputStream in)

This creates a FilterInputStream by assigning the argument in to the field to remember it for later use.

Class methods

Sr.No. Method & Description
1 int available()

This method returns an estimate of the number of bytes that can be read (or skipped over) from this input stream without blocking by the next caller of a method for this input stream.

2 void close()

This method closes this input stream and releases any system resources associated with the stream.

3 void mark(int readlimit)

This method marks the current position in this input stream.

4 boolean markSupported()

This method tests if this input stream supports the mark and reset methods.

5 int read()

This method reads the next byte of data from this input stream.

6 int read(byte[] b)

This method reads up to byte.length bytes of data from this input stream into an array of bytes.

7 int read(byte[] b, int off, int len)

This method reads up to len bytes of data from this input stream into an array of bytes.

8 void reset()

This method repositions this stream to the position at the time the mark method was last called on this input stream.

9 long skip(long n)

This method skips over and discards n bytes of data from this input stream.

Methods inherited

This class inherits methods from the following classes −