java.io
Class InputStreamReader

java.lang.Object
  extended by java.io.Reader
      extended by java.io.InputStreamReader

public class InputStreamReader
extends Reader

This class reads characters from a byte input stream. The characters read are converted from bytes in the underlying stream by a decoding layer. The decoding layer transforms bytes to chars according to an encoding standard. There are many available encodings to choose from. The desired encoding can either be specified by name, or if no encoding is selected, the system default encoding will be used. The system default encoding name is determined from the system property file.encoding. The only encodings that are guaranteed to be availalbe are "8859_1" (the Latin-1 character set) and "UTF8". Unforunately, Java does not provide a mechanism for listing the ecodings that are supported in a given implementation.

Here is a list of standard encoding names that may be available:

It is recommended that applications do not use InputStreamReader's directly. Rather, for efficiency purposes, an object of this class should be wrapped by a BufferedReader.

Due to a deficiency the Java class library design, there is no standard way for an application to install its own byte-character encoding.

See Also:
BufferedReader, InputStream

Field Summary
 
Fields inherited from class java.io.Reader
lock
 
Constructor Summary
InputStreamReader(InputStream in)
           
 
Method Summary
 void close()
          This method closes this stream, as well as the underlying InputStream.
 int read()
          This method reads a single character of data from the stream.
 int read(char[] buf, int offset, int length)
          This method reads up to length characters from the stream into the specified array starting at index offset into the array.
 boolean ready()
          This method checks to see if the stream is read to be read.
 
Methods inherited from class java.io.Reader
mark, markSupported, read, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InputStreamReader

public InputStreamReader(InputStream in)
Method Detail

close

public void close()
           throws IOException
This method closes this stream, as well as the underlying InputStream.

Specified by:
close in class Reader
Throws:
IOException - If an error occurs

ready

public boolean ready()
              throws IOException
This method checks to see if the stream is read to be read. It will return true if is, or false if it is not. If the stream is not ready to be read, it could (although is not required to) block on the next read attempt.

Overrides:
ready in class Reader
Returns:
true if the stream is ready to be read, false otherwise
Throws:
IOException - If an error occurs

read

public int read(char[] buf,
                int offset,
                int length)
         throws IOException
This method reads up to length characters from the stream into the specified array starting at index offset into the array.

Specified by:
read in class Reader
Parameters:
buf - The character array to recieve the data read
offset - The offset into the array to start storing characters
length - The requested number of characters to read.
Returns:
The actual number of characters read, or -1 if end of stream.
Throws:
IOException - If an error occurs

read

public int read()
         throws IOException
This method reads a single character of data from the stream.

Overrides:
read in class Reader
Returns:
The char read, as an int, or -1 if end of stream.
Throws:
IOException - If an error occurs