Packages This Package Prev Next Index
§2.13 Class InputStream
public abstract class java.io.InputStream
extends java.lang.Object (I-§1.12)
{
// Constructors
public InputStream(); §2.13.1
// Methods
public int available(); §2.13.2
public void close(); §2.13.3
public void mark(int readlimit); §2.13.4
public boolean markSupported(); §2.13.5
public abstract int read(); §2.13.6
public int read(byte b[]); §2.13.7
public int read(byte b[], int off, int len); §2.13.8
public void reset(); §2.13.9
public long skip(long n); §2.13.10
}
This class is an abstract class that is the superclass of all classes representing an input
stream of bytes.
Applications that need to define a subclass of InputStream must always provide a method
that returns the next byte of input (I-§2.13.6).
InputStream
public InputStream()
- The default constructor. This constructor is only called by subclasses.
available
public int available()
throws IOException
- Determines the number of bytes that can be read from this input stream
without blocking. The available method of InputStream returns 0. This
method should be overridden by subclasses.
- Returns:
- the number of bytes that can be read from this input stream without
blocking.
- Throws
- IOException (I-§2.29)
- If an I/O error occurs.
close
public void close()
throws IOException
- Closes this input stream and releases any system resources associated with
the stream.
- The close method of InputStream does nothing.
- Throws
- IOException (I-§2.29)
- If an I/O error occurs.
mark
public void mark(int readlimit)
- Marks the current position in this input stream. A subsequent call to the
reset method (I-§2.13.9) repositions this stream at the last marked position
so that subsequent reads re-read the same bytes.
- The readlimit arguments tells this input stream to allow that many bytes to
be read before the mark position gets invalidated.
- The mark method of InputStream does nothing.
- Parameters:
readlimit
-
the maximum limit of bytes that can be read before the mark
position becomes invalid.
markSupported
public boolean markSupported()
- Determines if this input stream supports the mark (I-§2.13.4) and reset
(I-§2.13.9) methods. The markSupported method of InputStream returns false.
- Returns:
- true if this true type supports the mark and reset method; false otherwise.
-
read
public abstract int read()
throws IOException
- Reads the next byte of data from this input stream. The value 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.
- A subclass must provide an implementation of this method.
- 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.
read
public int read(byte b[])
throws IOException
- Reads up to b.length bytes of data from this input instream into an array of
bytes.
- The read method of InputStream calls the the read method of three arguments
(I-§2.13.8) with the arguments b, 0, and b.length.
- Parameters:
b
-
the buffer into which the data is read
- Returns:
- the total number of bytes read into the buffer, or -1 is there is no more
data because the end of the stream has been reached.
- Throws
- IOException (I-§2.29)
- If an I/O error occurs.
read
public int read(byte b[], int off, int len)
throws IOException
- Reads up to len bytes of data from this input stream into an array of bytes.
This method blocks until some input is available. If the first argument is
null, up to len bytes are read and discarded.
- The read method of InputStream reads a single byte at a time using the read
method of zero arguments (I-§2.13.6) to fill in the array. Subclasses are
encouraged to provide a more efficient implementation of this method.
- Parameters:
b
-
the buffer into which the data is read
off
-
the start offset of the data
len
-
the maximum number of bytes read
- Returns:
- the total number of bytes read into the buffer, or -1 is there is no more
data because the end of the stream has been reached.
- Throws
- IOException (I-§2.29)
- If an I/O error occurs.
reset
public void reset()
throws IOException
- Repositions this stream to the position at the time the mark method
(I-§2.13.4) was last called on this input stream
- The reset method of InputStream throws an IOException (I-§2.29), since input
streams, by default, do not support mark and reset.
- Throws
- IOException (I-§2.29)
- If this stream has not been marked or if the mark has been invalidated.
skip
public long skip(long n)
throws IOException
- Skips over and discards n bytes of data from this input stream. The skip
method may, for a variety of reasons, end up skipping over some smaller
number of bytes, possibly zero. The actual number of bytes skipped is
returned.
- The skip method of InputStream creates a byte array of length n and then
reads into it until n bytes have been read or the end of the stream has been
reached. Subclasses are encouraged to provide a more efficient implementation of this method.
- Parameters:
n
-
the number of bytes to be skipped
- Returns:
- the actual number of bytes skipped.
- Throws
- IOException (I-§2.29)
- If an I/O error occurs.
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