モジュール java.base
パッケージ java.io

クラスReader

    • フィールドのサマリー

      フィールド 
      修飾子と型 フィールド 説明
      protected Object lock
      このストリームに対する処理の同期に使用するオブジェクトです。
    • コンストラクタのサマリー

      コンストラクタ 
      修飾子 コンストラクタ 説明
      protected Reader​()
      リーダー自体でクリティカル・セクションが同期する文字ストリーム・リーダーを新しく作成します。
      protected Reader​(Object lock)
      指定されたオブジェクトでクリティカル・セクションが同期する文字ストリーム・リーダーを新しく作成します。
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 抽象メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      abstract void close​()
      ストリームを閉じて、それに関連するすべてのシステム・リソースを解放します。
      void mark​(int readAheadLimit)
      ストリームの現在位置にマークを設定します。
      boolean markSupported​()
      このストリームがmark()オペレーションをサポートするかどうかを判定します。
      int read​()
      単一の文字を読み込みます。
      int read​(char[] cbuf)
      配列に文字を読み込みます。
      abstract int read​(char[] cbuf, int off, int len)
      配列の一部に文字を読み込みます。
      int read​(CharBuffer target)
      指定された文字バッファに文字列を読み込みます。
      boolean ready​()
      このストリームが読込み可能かどうかを判定します。
      void reset​()
      ストリームをリセットします。
      long skip​(long n)
      文字をスキップします。
    • フィールドの詳細

      • lock

        protected Object lock
        このストリームに対する処理の同期に使用するオブジェクトです。 効率を良くするため、文字ストリーム・オブジェクトは、ほかのオブジェクトを使ってクリティカル・セクションを保護することができます。 そのため、サブクラスではthisではなくこのフィールドのオブジェクトを使用するか、同期化したメソッドを使用するようにしてください。
    • コンストラクタの詳細

      • Reader

        protected Reader​()
        リーダー自体でクリティカル・セクションが同期する文字ストリーム・リーダーを新しく作成します。
      • Reader

        protected Reader​(Object lock)
        指定されたオブジェクトでクリティカル・セクションが同期する文字ストリーム・リーダーを新しく作成します。
        パラメータ:
        lock - 同期するオブジェクト。
    • メソッドの詳細

      • read

        public int read​(CharBuffer target)
                 throws IOException
        指定された文字バッファに文字列を読み込みます。 バッファは、put操作の結果により変更される以外は、文字列そのままのリポジトリとして使用されます。 バッファのフリッピング(反転)やリワインド(巻き戻し)は行われません。
        定義:
        read、インタフェース: Readable
        パラメータ:
        target - 文字を読み込むバッファ
        戻り値:
        バッファに追加された文字の数。文字のソースが最後の位置にある場合は -1
        例外:
        IOException - 入出力エラーが発生した場合
        NullPointerException - targetがnullである場合
        ReadOnlyBufferException - targetが読取り専用バッファの場合
        導入されたバージョン:
        1.5
      • read

        public int read​()
                 throws IOException
        単一の文字を読み込みます。 このメソッドは1文字が読み込まれるか、入出力エラーが発生するか、あるいはストリームの終わりに達するまでブロックします。

        有効な単一文字の入力をサポートするためのサブクラスでは、このメソッドをオーバーライドします。

        戻り値:
        0 - 65535 (0x00-0xffff)の範囲の整数としての、読み込まれた文字。ストリームの終わりに達した場合は -1
        例外:
        IOException - 入出力エラーが発生した場合
      • read

        public int read​(char[] cbuf)
                 throws IOException
        配列に文字を読み込みます。 このメソッドは入力の一部が有効になるか、入出力エラーが発生するか、あるいはストリームの終わりに達するまでブロックします。
        パラメータ:
        cbuf - 転送先バッファ
        戻り値:
        読み込まれた文字数。ストリームの終わりに達した場合は -1
        例外:
        IOException - 入出力エラーが発生した場合
      • read

        public abstract int read​(char[] cbuf,
                                 int off,
                                 int len)
                          throws IOException
        配列の一部に文字を読み込みます。 このメソッドは入力の一部が有効になるか、入出力エラーが発生するか、あるいはストリームの終わりに達するまでブロックします。
        パラメータ:
        cbuf - 転送先バッファ
        off - 文字の格納開始オフセット
        len - 読み込む文字の最大数
        戻り値:
        読み込まれた文字数。ストリームの終わりに達した場合は -1
        例外:
        IOException - 入出力エラーが発生した場合
        IndexOutOfBoundsException - offが負の場合、またはlenが負の場合、またはlencbuf.length - offより大きい場合
      • skip

        public long skip​(long n)
                  throws IOException
        文字をスキップします。 このメソッドは、文字が読み込まれるか、入出力エラーが発生するか、あるいはストリームの終わりに達するまでブロックします。
        パラメータ:
        n - スキップする文字数
        戻り値:
        実際にスキップした文字数
        例外:
        IllegalArgumentException - nが負の値の場合。
        IOException - 入出力エラーが発生した場合
      • ready

        public boolean ready​()
                      throws IOException
        このストリームが読込み可能かどうかを判定します。
        戻り値:
        次のread()が入力をブロックしないことが確実な場合はtrue、そうでない場合はfalse。 falseが返されても、次の読込みが確実にブロックするというわけでない。
        例外:
        IOException - 入出力エラーが発生した場合
      • markSupported

        public boolean markSupported​()
        このストリームがmark()オペレーションをサポートするかどうかを判定します。 デフォルト実装は常にfalseを返します。 サブクラスはこのメソッドをオーバーライドする必要があります。
        戻り値:
        このストリームがmarkオペレーションをサポートする場合に限りtrue。
      • mark

        public void mark​(int readAheadLimit)
                  throws IOException
        ストリームの現在位置にマークを設定します。 以降のreset()の呼出しでは、この位置へのストリームの再配置が試みられます。 すべての文字入力ストリームでmark()オペレーションがサポートされているわけではありません。
        パラメータ:
        readAheadLimit - マークを保持しながら読み込むことができる文字数の上限。 この数の文字を読み込んだあとでストリームをリセットしようとすると失敗する場合がある。
        例外:
        IOException - ストリームがmark()をサポートしない場合、またはその他の入出力エラーが発生した場合
      • reset

        public void reset​()
                   throws IOException
        ストリームをリセットします。 ストリームにマークが設定されている場合は、マークに再配置しようとします。 マークが設定されていない場合は、開始位置への再配置など、個々のストリームに適した方法でリセットを試みます。 すべての文字入力ストリームでreset()オペレーションがサポートされているわけではありません。また、mark()をサポートせずにreset()をサポートするものもあります。
        例外:
        IOException - ストリームにマークが設定されなかった場合、またはマークの設定が無効になった場合、またはストリームがreset()をサポートしない場合、または他の入出力エラーが発生した場合
      • close

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