全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス
java.lang.Object | +----java.io.InputStream
InputStream のサブクラスを定義する必要のあるアプリケーションは、必ず入力の次のバイトを返すメソッドを提供しなければなりません。
mark と reset メソッドをサポートしているかをテストする。
b.length バイトのデータを読み込む。
len バイトのデータを読み込む。 mark メソッドが呼び出された時点のマーク位置へストリームを再設定する。
n バイトだけスキップしてその範囲のデータを捨てる。public InputStream()
public abstract int read() throws IOException
0 から 255 の値をとる int として返されます。ストリームの終端に達して読み込むデータが存在しない場合は -1 を返します。このメソッドはデータが読み込み可能になるか、ストリームの終端が検出されるか、または例外がスローされるまでブロックします。
サブクラスはこのメソッドの実装を提供しなければなりません。
-1 。
public int read(byte b[]) throws IOException
b.length バイトのデータを読み込みます。
InputStream の read メソッドは、3個の引数をとる read メソッドに引数 b、0、および b.length を与えて呼び出します。
-1 。
public int read(byte b[],
int off,
int len) throws IOException
len バイトのデータを読み込みます。このメソッドはデータが読み込み可能になるまでブロックします。もし第1引数が null であった場合は、最大 len バイトのデータを読み込み、それを廃棄します。
InputStream の read メソッドは引数を取らない read メソッドを繰り返し呼び出して1回に1バイトずつ読み込んで配列に書き込みます。サブクラスでこのメソッドを実装する場合はより効率の良い方法をとられることを勧めます。
-1 。
public long skip(long n) throws IOException
n バイトだけスキップしてその範囲のデータを捨てます。種々の理由により skip メソッドは指定されたよりも小さな(0 の場合もあり)バイト数しかスキップしないことがあります。実際にスキップしたバイト数が返されます。
InputStream の skip メソッドは長さ n のバイト配列を作成して、そこに n バイトのデータを書き終えるか、またはストリームの終端に達するまで読み込みを続けます。サブクラスでこのメソッドを実装する場合はより効率の良い方法をとられることを勧めます。
public int available() throws IOException
InputStream の available メソッドは 0 を返します。 このメソッドは 必ずサブクラスでオーバーライドしてください。
public void close() throws IOException
InputStream の close メソッドは何も行いません。
public synchronized void mark(int readlimit)
resetメソッドを呼び出すと最後にマークを付けられた位置にストリームを再設定しますから、次回の読み込み操作は同じバイトから読み込むことになります。
引数 readlimit はこの入力ストリームに対して、マーク位置が無効になる前にこの引数が指定するバイト数を読み込むように指示します。
InputStream の mark メソッドは何も行いません。
public synchronized void reset() throws IOException
mark メソッドが呼び出されたときのマーク位置へこのストリームの位置を再設定します。
InputStream の reset メソッドは IOException スローします。これは、入力ストリームがデフォルトにより mark と reset をサポートしていないためです。
ストリームのマークは、ストリームに何が含まれているかをチェックするために少しデータを先読みするために使われます。これを最も容易に実行する方法は一般的なパーザを動かすことです。 ストリームがパーザで取り扱えるタイプならば、これですべてうまく行きます。 ストリームがこのようなタイプではない場合は、パーザが失敗した場所で例外を発生します。もし readlimit バイトの範囲内でこれが発生した場合は、例外を検知した外部コードがストリームをリセットして、別なパーザで再トライすることができます。
public boolean markSupported()
mark と reset メソッドをサポートしているかどうかをテストします。 InputStream の markSupported メソッドは false を返します。
mark と reset メソッドをサポートするタイプであれば true、それ以外であれば false。
全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス