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

クラスPushbackReader

すべての実装されたインタフェース:
Closeable, AutoCloseable, Readable

public class PushbackReader
extends FilterReader
文字をストリームにプッシュ・バックできる文字ストリーム・リーダーです。
導入されたバージョン:
1.1
  • フィールドのサマリー

    クラス java.io.FilterReaderで宣言されたフィールド

    in

    クラス java.io.Readerで宣言されたフィールド

    lock
  • コンストラクタのサマリー

    コンストラクタ 
    コンストラクタ 説明
    PushbackReader​(Reader in)
    1文字分のプッシュバック・バッファを持つ、新しいプッシュバック・リーダーを作成します。
    PushbackReader​(Reader in, int size)
    指定されたサイズのプッシュバック・バッファを持つ、新しいプッシュバック・リーダーを作成します。
  • メソッドのサマリー

    修飾子と型 メソッド 説明
    void close()
    ストリームを閉じて、それに関連するすべてのシステム・リソースを解放します。
    void mark​(int readAheadLimit)
    ストリームの現在位置にマークを設定します。
    boolean markSupported()
    このストリームがmark()オペレーションをサポートするかどうか、サポートしないのはどれなのかを調べます。
    int read()
    単一の文字を読み込みます。
    int read​(char[] cbuf, int off, int len)
    配列の一部に文字を読み込みます。
    boolean ready()
    このストリームが読込み可能かどうかを判定します。
    void reset()
    ストリームをリセットします。
    long skip​(long n)
    文字をスキップします。
    void unread​(char[] cbuf)
    プッシュバック・バッファの先頭に文字配列をコピーすることによって、文字配列をプッシュ・バックします。
    void unread​(char[] cbuf, int off, int len)
    プッシュバック・バッファの先頭に文字配列の一部をコピーすることによって、それらの文字をプッシュ・バックします。
    void unread​(int c)
    プッシュバック・バッファの先頭に1文字をコピーすることによって、その文字をプッシュ・バックします。

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

    nullReader, read, read, transferTo

    クラス java.lang.Objectで宣言されたメソッド

    cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait
  • コンストラクタの詳細

    • PushbackReader

      public PushbackReader​(Reader in, int size)
      指定されたサイズのプッシュバック・バッファを持つ、新しいプッシュバック・リーダーを作成します。
      パラメータ:
      in - 文字の読込み元のリーダー
      size - プッシュバック・バッファのサイズ
      例外:
      IllegalArgumentException - size <= 0の場合
    • PushbackReader

      public PushbackReader​(Reader in)
      1文字分のプッシュバック・バッファを持つ、新しいプッシュバック・リーダーを作成します。
      パラメータ:
      in - 文字の読込み元のリーダー
  • メソッドの詳細

    • read

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

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

      public void unread​(int c) throws IOException
      プッシュバック・バッファの先頭に1文字をコピーすることによって、その文字をプッシュ・バックします。 このメソッドが復帰すると、次に読み込まれる文字は値(char)cを持ちます。
      パラメータ:
      c - プッシュ・バックされる文字を表すint値
      例外:
      IOException - ブッシュバック・バッファがいっぱいの場合、またはほかの入出力エラーが発生した場合
    • unread

      public void unread​(char[] cbuf, int off, int len) throws IOException
      プッシュバック・バッファの先頭に文字配列の一部をコピーすることによって、それらの文字をプッシュ・バックします。 このメソッドが復帰すると、次に読み込まれる文字は値cbuf[off]を持ち、その次の文字は値cbuf[off+1]を持ちます。それ以降も同様に続きます。
      パラメータ:
      cbuf - 文字配列
      off - 文字のプッシュ・バック開始オフセット
      len - プッシュ・バックする文字数
      例外:
      IOException - プッシュバック・バッファに十分なスペースがない場合、またはほかの入出力エラーが発生した場合
    • unread

      public void unread​(char[] cbuf) throws IOException
      プッシュバック・バッファの先頭に文字配列をコピーすることによって、文字配列をプッシュ・バックします。 このメソッドが復帰すると、次に読み込まれる文字は値cbuf[0]を持ち、その次の文字は値cbuf[1]を持ちます。それ以降も同様に続きます。
      パラメータ:
      cbuf - プッシュ・バックする文字配列
      例外:
      IOException - プッシュバック・バッファに十分なスペースがない場合、またはほかの入出力エラーが発生した場合
    • ready

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

      public void mark​(int readAheadLimit) throws IOException
      ストリームの現在位置にマークを設定します。 PushbackReaderクラスのmarkは常に例外をスローします。
      オーバーライド:
      mark、クラス: FilterReader
      パラメータ:
      readAheadLimit - マークを保持しながら読み込むことができる文字数の上限。 この数の文字を読み込んだあとでストリームをリセットしようとすると失敗する場合がある。
      例外:
      IOException - markメソッドはサポートされていないので、常にスローされる
    • reset

      public void reset() throws IOException
      ストリームをリセットします。 resetPushbackReaderメソッドは常に例外をスローします。
      オーバーライド:
      reset、クラス: FilterReader
      例外:
      IOException - resetメソッドはサポートされていないので、常にスローされる
    • markSupported

      public boolean markSupported()
      このストリームがmark()オペレーションをサポートするかどうか、サポートしないのはどれなのかを調べます。
      オーバーライド:
      markSupported、クラス: FilterReader
      戻り値:
      このストリームがmarkオペレーションをサポートする場合に限りtrue。
    • close

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

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