クラスCharArrayReader

java.lang.Object
java.io.Reader
java.io.CharArrayReader
すべての実装されたインタフェース:
Closeable, AutoCloseable, Readable

public class CharArrayReader extends Reader
文字入力ストリームとして使用する文字バッファを実装します。
導入されたバージョン:
1.1
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    protected char[]
    文字バッファです。
    protected int
    このバッファの最後のインデックスです。
    protected int
    バッファ内のマーク位置です。
    protected int
    現在のバッファの位置です。

    クラスリーダーで宣言されたフィールド

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

    コンストラクタ
    コンストラクタ
    説明
    CharArrayReader(char[] buf)
    指定された文字の配列からCharArrayReaderを作成します。
    CharArrayReader(char[] buf, int offset, int length)
    指定された文字の配列からCharArrayReaderを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    ストリームを閉じて、それに関連するすべてのシステム・リソースを解放します。
    void
    mark(int readAheadLimit)
    ストリームの現在位置にマークを設定します。
    boolean
    このストリームが、実行するmark()オペレーションをサポートするかどうかを通知します。
    int
    単一の文字を読み込みます。
    int
    read(char[] cbuf, int off, int len)
    配列の一部に文字を読み込みます。
    boolean
    このストリームが読込み可能かどうかを判定します。
    void
    直前のマーク位置にストリームをリセットします。マークが設定されていない場合は、先頭位置にリセットします。
    long
    skip(long n)
    文字をスキップします。

    クラスReaderで宣言されたメソッド

    nullReader, of, read, read, readAllAsString, readAllLines, transferTo
    修飾子と型
    メソッド
    説明
    static Reader
    文字を読み取らない新しいReaderを返します。
    static Reader
    CharSequenceから文字を読み取るReaderを返します。
    int
    read(char[] cbuf)
    配列に文字を読み込みます。
    int
    read(CharBuffer target)
    指定されたcharバッファにcharを読み込みます。
    残りの文字をすべて文字列に読み込みます。
    残りの文字をすべてテキスト行として読み取ります。
    long
    このリーダーからすべての文字を読み込み、指定されたライターに読み込まれた順番で書き込みます。

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    オブジェクトの文字列表現を返します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • フィールド詳細

    • buf

      protected char[] buf
      文字バッファです。
    • pos

      protected int pos
      現在のバッファの位置です。
    • markedPos

      protected int markedPos
      バッファ内のマーク位置です。
    • count

      protected int count
      このバッファの最後のインデックスです。 このインデックス以上の有効なデータはありません。
  • コンストラクタの詳細

    • CharArrayReader

      public CharArrayReader(char[] buf)
      指定された文字の配列からCharArrayReaderを作成します。
      パラメータ:
      buf - 入力バッファ(コピーされていない)
    • CharArrayReader

      public CharArrayReader(char[] buf, int offset, int length)
      指定された文字の配列からCharArrayReaderを作成します。

      結果の読者は、指定されたoffsetで読み取りを開始します。 このリーダーから読み取ることができるchar値の合計数は、lengthまたはbuf.length-offsetのいずれか小さい方になります。

      パラメータ:
      buf - 入力バッファ(コピーされていない)
      offset - 読み込む最初の文字オフセット
      length - 読み込む文字数
      スロー:
      IllegalArgumentException - offsetが負またはbuf.lengthより大きい場合、lengthが負の場合、またはこれら2つの値の合計が負の場合。
  • メソッドの詳細

    • read

      public int read() throws IOException
      単一の文字を読み込みます。
      オーバーライド:
      read、クラスReader
      戻り値:
      0から65535 (0x00-0xffff)の範囲の整数として読み取られる文字、またはストリームの終わりに達した場合は-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 - 入出力エラーが発生した場合
    • skip

      public long skip(long n) throws IOException
      文字をスキップします。 このメソッドを呼び出す前にストリームがすでに終了している場合は、文字はスキップされず、ゼロが返されます。

      nパラメータは、Readerスーパー・クラスのskipメソッドが例外をスローする場合があっても、負の値にできます。 nが負の場合、このメソッドは何もせずに0を返します。

      オーバーライド:
      skip、クラスReader
      パラメータ:
      n - スキップする文字数
      戻り値:
      実際にスキップした文字数
      スロー:
      IOException - 入出力エラーが発生した場合
    • ready

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

      public boolean markSupported()
      このストリームが、実行するmark()オペレーションをサポートするかどうかを通知します。
      オーバーライド:
      markSupported、クラスReader
      戻り値:
      このストリームがmarkオペレーションをサポートする場合に限りtrue。
    • mark

      public void mark(int readAheadLimit) throws IOException
      ストリームの現在位置にマークを設定します。 以降のreset()の呼出しでは、ストリームはこの位置に再配置されます。
      オーバーライド:
      mark、クラスReader
      パラメータ:
      readAheadLimit - マークを保持しながら読み込むことができる文字数の上限。 ストリームには文字配列から入力されるので、実際の上限はない。そのため、この引数は無視される。
      スロー:
      IOException - 入出力エラーが発生した場合
    • reset

      public void reset() throws IOException
      直前のマーク位置にストリームをリセットします。マークが設定されていない場合は、先頭位置にリセットします。
      オーバーライド:
      reset、クラスReader
      スロー:
      IOException - 入出力エラーが発生した場合
    • close

      public void close()
      ストリームを閉じて、それに関連するすべてのシステム・リソースを解放します。 ストリームが閉じられたあとにread()、ready()、mark()、reset()、またはskip()を呼び出すと、IOExceptionがスローされます。 すでに閉じられているストリームを閉じても、何の影響もありません。 このメソッドは、リーダーで別のスレッドがブロックされている間はブロックされます。
      定義:
      close、インタフェースAutoCloseable
      定義:
      close、インタフェースCloseable
      定義:
      close、クラスReader