クラスInputStreamReader

java.lang.Object
java.io.Reader
java.io.InputStreamReader
すべての実装されたインタフェース:
Closeable, AutoCloseable, Readable
直系の既知のサブクラス:
FileReader

public class InputStreamReader extends Reader
InputStreamReaderはバイト・ストリー から文字ストリー への橋渡しの役目を持ちます。バイトを読み込み、指定されたcharsetを使用して文字にデコードします。 使用する文字セットは、名前で指定することも、明示的に指定することも、default charsetを使用することもできます。

InputStreamReaderのread()メソッドのいずれかを呼び出すたびに、ベースとなるバイト入力ストリー から1つ以上のバイトが読み込まれます。 バイトから文字への効率的な変換を可能にするために、現在の読込みオペレーションを満たすのに必要な量より多くのバイトをベースとなるストリー から先読みすることができます。

変換効率を最高にするには、BufferedReaderの内部にInputStreamReaderをラップすることを考慮してく さい。 たとえば、

    BufferedReader in = new BufferedReader(new InputStreamReader(anInputStream));

導入されたバージョン:
1.1
関連 目:
  • コンストラクタの詳細

    • InputStreamReader

      public InputStreamReader(InputStream in)
      default charsetを使用するInputStreamReaderを作成します。
      パラメータ:
      in - InputStream
      関連 目:
    • InputStreamReader

      public InputStreamReader(InputStream in, String charsetName) throws UnsupportedEncodingException
      指定された文字セットを使うInputStreamReaderを作成します。
      パラメータ:
      in - InputStream
      charsetName - サポートされているcharsetの名前
      スロー:
      UnsupportedEncodingException - 指定された文字セットがサポートされていない 合
    • InputStreamReader

      public InputStreamReader(InputStream in, Charset cs)
      与えられた文字セットを使うInputStreamReaderを作成します。
      パラメータ:
      in - InputStream
      cs - charset
      導入されたバージョン:
      1.4
    • InputStreamReader

      public InputStreamReader(InputStream in, CharsetDecoder dec)
      与えられた文字セット・デコーダを使うInputStreamReaderを作成します。
      パラメータ:
      in - InputStream
      dec - 文字セット・デコーダ
      導入されたバージョン:
      1.4
  • メソッドの詳細

    • getEncoding

      public String getEncoding()
      このストリー で使用される文字エンコーディングの名前を返します。

      エンコーディングに互換名がある 合は、その名前を返します。互換名がない 合は、エンコーディングの正規名を返します。

      このインスタンスがInputStreamReader(InputStream, String)コンストラクタを使用して作成された 合、返される名前はエンコーディングに対して一意となり、そのコンストラクタに渡された名前とは異なることがあります。 ストリー が閉じている 合、このメソッドはnullを返します。

      戻り値:
      このエンコーディングの互換名。ストリー が閉じている 合はnull
      関連 目:
    • read

      public int read() throws IOException
      単一の文字を読み込みます。
      オーバーライド:
      read、クラスReader
      戻り値:
      読み込まれた文字。ストリー の終わりに達した 合は -1
      スロー:
      IOException - 入出力エラーが発生した 合
    • read

      public int read(char[] cbuf, int off, int len) throws IOException
      配列の一部に文字を読み込みます。 このメソッドは入力の一部が有効になるか、入出力エラーが発生するか、あるいはストリー の終わりに達するまでブロックします。

      lenが0の 合、文字は読み取られず、0が返されます。そうしないと、少なくとも1文字の読取りが試行されます。 ストリー が終了しているため、使用できる文字がない 合、値-1が返されます。そうしないと、少なくとも1つの文字が読み取られ、cbufに 納されます。

      定義:
      read、クラスReader
      パラメータ:
      cbuf - 転送先バッファ
      off - 文字の 納開始オフセット
      len - 読み込む文字の最大数
      戻り値:
      読み込まれた文字数。ストリー の終わりに達した 合は -1
      スロー:
      IndexOutOfBoundsException - offが 、lenが 、またはlencbuf.length - offより大きい 合
      IOException - 入出力エラーが発生した 合
    • ready

      public boolean ready() throws IOException
      このストリー が読込み可能かどうかを判定します。 InputStreamReaderは、入力バッファが空白でない 合、またはベースとなるバイト・ストリー からバイト・データを読み込める状態である 合に読込み可能です。
      オーバーライド:
      ready、クラスReader
      戻り値:
      次のread()が入力をブロックしないことが確実な 合はtrue、そうでない 合はfalse。 falseが返されても、次の読込みが確実にブロックするというわけでない。
      スロー:
      IOException - 入出力エラーが発生した 合
    • close

      public void close() throws IOException
      次のクラスからコピーされた説明: Reader
      ストリー を閉じて、それに関連するすべてのシステ ・リソースを解放します。 ストリー が閉じられたあとにread()、ready()、mark()、reset()、またはskip()を呼び出すと、IOExceptionがスローされます。 すでに閉じられているストリー を閉じても、何の影響もありません。
      定義:
      close、インタフェースAutoCloseable
      定義:
      close、インタフェースCloseable
      定義:
      close、クラスReader
      スロー:
      IOException - 入出力エラーが発生した 合