全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス

クラス java.io.PushbackInputStream

java.lang.Object
   |
   +----java.io.InputStream
           |
           +----java.io.FilterInputStream
                   |
                   +----java.io.PushbackInputStream

public class PushbackInputStream
extends FilterInputStream
このクラスは、1バイトのブッシュバックバッファを提供する入力ストリームフィルタです。この機能によって、アプリケーションはそれが読み込む最後の文字を"unread"にできます。入力ストリームフィルタで次に読み込みが行われるときに、その"unread"の文字が再び読み込まれます。

この機能は、個々のバイト値によって範囲を定められた数が不定のデータバイトを、断片的なコードで読み込む場合に便利です。終端のバイトを読み込んだ後、コードの断片でそれを"unread"にできます。そのため、入力ストリームの次の読み込みオペレーションで、プッシュバックされたバイトを再度読み込みます。


Variable Index

 o buf
ブッシュバックバッファ。
 o pos
バッファ内の現在の位置。

Constructor Index

 o PushbackInputStream(InputStream)
指定の入力ストリームからその入力を読み込む、新しいプッシュバック入力ストリームを構築する。
 o PushbackInputStream(InputStream, int)
指定されたサイズのプッシュバックバッファを持つ新しい入力ストリームを構築する。

Method Index

 o available()
ブロックしなくてもこの入力ストリームから読み込めるバイト数を返す。
 o markSupported()
入力ストリームが markreset メソッドをサポートしているかどうかテストする。
 o read()
この入力ストリームからデータの次のバイトを読み込む。
 o read(byte[], int, int)
この入力ストリームから、len バイトのデータをバイトの配列に読み込む。
 o unread(byte[])
バイトの配列をプッシュバックする。
 o unread(byte[], int, int)
バイトの配列をプッシュバックする。
 o unread(int)
文字をプッシュバックし、この入力ストリームの read メソッドへの次の呼び出しで再び読み込まれるようにする。

Variables

 o buf
  protected byte buf[]
プッシュバックバッファです。

 o pos
  protected int pos
バッファ内の現在の位置です。

Constructors

 o PushbackInputStream
  public PushbackInputStream(InputStream in,
                             int size)
指定されたサイズのプッシュバックバッファを持つ新しい入力ストリームを構築します。

パラメータ:
size - プッシュバックバッファのサイズ
 o PushbackInputStream
  public PushbackInputStream(InputStream in)
指定の入力ストリームからその入力を読み込む、新しいプッシュバック入力ストリームを構築します。

パラメータ:
in - 基本の入力ストリーム

Methods

 o read
  public int read() throws IOException
この入力ストリームからデータの次のバイトを読み込みます。値のバイトは、0 から 255 の範囲の int として返されます。ストリームが終わったためにバイトがもうない場合は、値 -1 が返されます。このメソッドでは、入力データが来るか、ストリームの最後が検出されるか、または例外がスローされるまでブロックします。

PushbackInputStreamread メソッドでは、もしあればプッシュバックされた文字だけが返されます。ない場合は、その基本の入力ストリームのread メソッドを呼び出して、そのメソッドが返す値をすべて返します。

返り値:
データの次のバイト。ストリームの最後なら -1
例外: IOException
I/Oエラーが発生した場合。
オーバーライド:
クラスFilterInputStreamread
参照:
read
 o read
  public int read(byte b[],
                  int off,
                  int len) throws IOException
この入力ストリームから、len バイトまでのデータをバイトの配列に読み込みます。このメソッドでは、少なくとも1バイトの入力が来るまでブロックします。

パラメータ:
b - データを読み込むバッファ
off - データのスタートオフセット
len - 読み込むバイトの最大数
返り値:
バッファに読み込んだバイトの合計数。ストリームが終わってもうデータがない場合は -1
例外: IOException
I/Oエラーが発生した場合。
オーバーライド:
クラス FilterInputStreamread
 o unread
  public void unread(int b) throws IOException
文字をプッシュバックし、この入力ストリームの read メソッドの次の呼び出しで再び読み込まれるようにします。

パラメータ:
b - プッシュバックする文字
例外: IOException
前にプッシュバックした文字を読み込む前にアプリケーションが文字をプッシュバックしようとした場合。
 o unread
  public void unread(byte b[],
                     int off,
                     int len) throws IOException
バイトの配列をプッシュバックします。

パラメータ:
b - プッシュバックするバイト
off - データのスタートオフセット
len - プッシュバックするバイト数
例外: IOException
指定されたバイト数に対して、プッシュバックバッファに十分なスペースがない場合。
 o unread
  public void unread(byte b[]) throws IOException
バイトの配列をプッシュバックします。

パラメータ:
b - プッシュバックするバイト
例外: IOException
指定されたバイト数に対して、プッシュバックバッファに十分なスペースがない場合。
 o available
  public int available() throws IOException
ブロックしなくてもこの入力ストリームから読み込めるバイト数を返します。

PushbackInputStreamavailable メソッドで、その基本の入力ストリームで available メソッドを呼び出します。プッシュバックされた値がなければ、その値を返します。プッシュバックされた文字があれば、その値に 1 を加えて返します。

返り値:
ブロックしなくても入力ストリームから読み込めるバイト数
例外: IOException
I/Oエラーが発生した場合。
オーバーライド:
クラス FilterInputStreamavailable
参照:
in
 o markSupported
  public boolean markSupported()
入力ストリームが markreset メソッドをサポートしているかどうかテストします。 PushbackInputStreammarkSupported メソッドでは、常に false を返します。

返り値:
このストリームの種類で markreset メソッドをサポートしていれば true、サポートしていなければ false
オーバーライド:
クラス FilterInputStreammarkSupported
参照:
mark, reset

全パッケージ  クラス階層  このパッケージ  前項目  次項目  インデックス