# Class InputStreamReader

java.lang.Object
java.io.Reader
java.io.InputStreamReader

All Implemented Interfaces:
  `java.io.Closeable, AutoCloseable, java.lang.Readable`

public class InputStreamReader extends java.io.Reader
An InputStreamReader is a bridge from byte streams to character streams: It reads bytes and translates them into characters. The encoding that it uses may be specified by name, or the platform's default encoding may be accepted. Each invocation of one of an InputStreamReader's read() methods may cause one or more bytes to be read from the underlying byte input stream. To enable the efficient conversion of bytes to characters, more bytes may be read ahead from the underlying stream than are necessary to satisfy the current read operation. Since: CLDC 1.0 See Also:Reader, UnsupportedEncodingException

- ## Field Summary

  ### Fields inherited from class java.io.Reader

  `lock`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `InputStreamReader(InputStream is)`
  Create an InputStreamReader that uses the default character encoding.
  `InputStreamReader(InputStream is, String enc)`
  Create an InputStreamReader that uses the named character encoding.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  Close the stream.
  `void`
  `mark(int readAheadLimit)`
  Mark the present position in the stream.
  `boolean`
  `markSupported()`
  Tell whether this stream supports the mark() operation.
  `int`
  `read()`
  Read a single character.
  `int`
  `read(char[] cbuf, int off, int len)`
  Read characters into a portion of an array.
  `boolean`
  `ready()`
  Tell whether this stream is ready to be read.
  `void`
  `reset()`
  Reset the stream.
  `long`
  `skip(long n)`
  Skip characters.

  ### Methods inherited from class java.io.Reader

  `read, read`

  ### Methods inherited from class Object

  `clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### InputStreamReader

    public InputStreamReader(InputStream is)
    Create an InputStreamReader that uses the default character encoding. is - An InputStream

  - ### InputStreamReader

    public InputStreamReader(InputStream is, String enc) throws java.io.UnsupportedEncodingException

    Create an InputStreamReader that uses the named character encoding. is - An InputStreamenc - The name of a supported character encoding

    - If the named encoding is not supported
    Throws:
      `java.io.UnsupportedEncodingException`

- ## Method Details

  - ### close

    public void close() throws java.io.IOException
    Close the stream. Closing a previously closed stream has no effect.
    Specified by:
      `close` in interface `AutoCloseable`
    Specified by:
      `close` in interface `java.io.Closeable`
    Specified by:
      `close` in class `java.io.Reader`
    Throws:
      `java.io.IOException`

  - ### mark

    public void mark(int readAheadLimit) throws java.io.IOException
    Mark the present position in the stream.
    Overrides:
      `mark` in class `java.io.Reader`
    Throws:
      `java.io.IOException`

  - ### markSupported

    public boolean markSupported()
    Tell whether this stream supports the mark() operation.
    Overrides:
      `markSupported` in class `java.io.Reader`

  - ### read

    public int read() throws java.io.IOException
    Read a single character.
    Overrides:
      `read` in class `java.io.Reader`
    Throws:
      `java.io.IOException`

  - ### read

    public int read(char[] cbuf, int off, int len) throws java.io.IOException
    Read characters into a portion of an array.
    Specified by:
      `read` in class `java.io.Reader`
    Throws:
      `java.io.IOException`

  - ### ready

    public boolean ready() throws java.io.IOException
    Tell whether this stream is ready to be read.
    Overrides:
      `ready` in class `java.io.Reader`
    Throws:
      `java.io.IOException`

  - ### reset

    public void reset() throws java.io.IOException
    Reset the stream.
    Overrides:
      `reset` in class `java.io.Reader`
    Throws:
      `java.io.IOException`

  - ### skip

    public long skip(long n) throws java.io.IOException
    Skip characters.
    Overrides:
      `skip` in class `java.io.Reader`
    Throws:
      `java.io.IOException`