Packages  This Package  Prev  Next  Index  

§2.21 Class SequenceInputStream

public  class  java.io.SequenceInputStream
    extends  java.io.InputStream  (I-§2.13)
{
        // Constructors
    public SequenceInputStream(Enumeration  e);	§2.21.1
    public SequenceInputStream(InputStream  s1, InputStream  s2); §2.21.2
     
        // Methods
    public void close();	§2.21.3
    public int read();	§2.21.4
    public int read(byte  buf[], int  pos, int  len);	§2.21.5
}
The sequence input stream class allows an application to combine several input streams serially and make them appear as if they were a single input stream. Each input stream is read from, in turn, until it reaches the end of the stream. The sequence input stream class then closes that stream and automatically switches to the next input stream.


Constructors

SequenceInputStream

public SequenceInputStream(Enumeration e)
Constructs a new sequence input stream initialized to the specified enumeration (I-§3.11) of input streams. Each object in the enumeration must be an InputStream.

Parameters:
e - an enumeration of input streams.

SequenceInputStream

public SequenceInputStream(InputStream s1, InputStream s2)
Constructs a new sequence input stream initialized to read first from the input stream s1, and then from the input stream s2.

Methods

close

public void close() throws IOException
Closes this input stream and releases any system resources associated with the stream.
The close method of SequenceInputStream calls the close method of both the substream from which it is currently reading and the close method of all the substreams that it has not yet begun to read from.
Throws
IOException (I-§2.29)
If an I/O error occurs.
Overrides:
close in class InputStream (I-§2.13.3).

read

public int read() throws IOException
Reads the next byte of data from this input stream. The byte is returned as an int in the range 0 to 255. If no byte is available because the end of the stream has been reached, the value -1 is returned. This method blocks until either input data is available, the end of the stream is detected, or an exception is thrown.
The read method of SequenceInputStream tries to read one character from the current substream. If it reaches the end of the stream, it calls the close method of the current substream and begins reading from the next substream.
Returns:
the next byte of data, or -1 if the end of the stream is reached.
Throws
IOException (I-§2.29)
If an I/O error occurs.
Overrides:
read in class InputStream (I-§2.13.6).

read

public int read(byte buf[], int pos, int len) throws IOException
Reads up to len bytes of data from this input stream into an array of bytes. This method blocks until at least one byte of input is available. If the first argument is null, up to len bytes are read and discarded.
The read method of SequenceInputStream tries to read the data from the current substream. If it fails to read any characters because the substream has reached the end of the stream, it calls the close method of the current substream and begins reading from the next substream.
Parameters:
b - the buffer into which the data is read
off - the start offset of the data
len - the maximum number of bytes read
Throws
IOException (I-§2.29)
If an I/O error occurs.
Overrides:
read in class InputStream (I-§2.13.8).

Packages  This Package  Prev  Next  Index
Java API Document (HTML generated by dkramer on April 22, 1996)
Copyright © 1996 Sun Microsystems, Inc. All rights reserved
Please send any comments or corrections to doug.kramer@sun.com