クラスFilterInputStream
java.lang.Object
java.io.InputStream
java.io.FilterInputStream
- すべての実装されたインタフェース:
Closeable,AutoCloseable
- 直系の既知のサブクラス:
BufferedInputStream,CheckedInputStream,CipherInputStream,DataInputStream,DeflaterInputStream,DigestInputStream,InflaterInputStream,LineNumberInputStream,ProgressMonitorInputStream,PushbackInputStream
public class FilterInputStream extends InputStream
FilterInputStreamは、他の入力ストリー をラップします。このストリー は、データの基本ソースとして使用され、その方法に沿ってデータを変換したり、追 の機能を提供します。 クラスFilterInputStream自体は、すべてのリクエストをラップされた入力ストリー に渡すバージョンでInputStreamの選択メソッドをオーバーライドする けです。 FilterInputStreamのサブクラスは、FilterInputStreamによって宣言または継承されるメソッドをオーバーライドし、追 のフィールドとメソッドを提供することもできます。 - 導入されたバージョン:
- 1.0
-
フィールドのサマリー
フィールド -
コンストラクタのサマリー
コンストラクタ修飾子コンストラクタ説明protectedあとで使用できるように引数inをフィールドthis.inに割り当てることによってFilterInputStreamを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明intこの入力ストリー のメソッドの次の呼出し側によって、ブロックせずにこの入力ストリー から読み込むことができる(またはスキップできる)推定バイト数を返します。voidclose()この入力ストリー を閉じて、そのストリー に関連するすべてのシステ ・リソースを解放します。voidmark(int readlimit) この入力ストリー の現在位置にマークを設定します。booleanこの入力ストリー がmarkおよびresetメソッドをサポートしているかどうかを判定します。intread()入力ストリー からデータの次のバイトを読み込みます。intread(byte[] b) 最大b.lengthバイトのデータを、この入力ストリー からバイト配列に読み込みます。intread(byte[] b, int off, int len) 最大lenバイトのデータを、この入力ストリー からバイト配列に読み込みます。voidreset()このストリー を、この入力ストリー で最後にmarkメソッドが呼び出されたときの位置に再配置します。longskip(long n) 入力ストリー からnバイトのデータをスキップして 棄します。クラスjava.io.InputStreamで宣言されたメソッド
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
フィールド詳細
-
in
protected volatile InputStream inフィルタ処理される入力ストリー です。
-
-
コンストラクタの詳細
-
FilterInputStream
protected FilterInputStream(InputStream in) あとで使用できるように引数inをフィールドthis.inに割り当てることによってFilterInputStreamを作成します。- パラメータ:
in- ベースとなる入力ストリー 。このインスタンスがベースとなるストリー なしで生成される 合はnull。
-
-
メソッドの詳細
-
read
public int read() throws IOException入力ストリー からデータの次のバイトを読み込みます。 バイト値は、0-255の範囲のintとして返されます。 ストリー の終わりに達したために読み込むバイトがない 合は、-1が返されます。 入力データが読み込めるようになるか、ストリー の終わりが検出されるか、または例外が発生するまで、このメソッドはブロックされます。- 定義:
read、クラスInputStream- 実装要件:
- このメソッドは単純に
in.read()を実行し、その結果を返します。 - 戻り値:
- データの次のバイト。ストリー の終わりに達した 合は
-1。 - スロー:
IOException- 入出力エラーが発生した 合。- 関連 目:
-
read
public int read(byte[] b) throws IOException 最大b.lengthバイトのデータを、この入力ストリー からバイト配列に読み込みます。 このメソッドは、入力の一部が利用できるようになるまでブロックします。- オーバーライド:
read、クラスInputStream- 実装要件:
- このメソッドは単純に
read(b, 0, b.length)の呼出しを実行し、その結果を返します。 代わりにin.read(b)が実行されないようにしてく さい。FilterInputStreamの特定のサブクラスは、実際に使用されている実装方法に依存します。 - パラメータ:
b- データの読込み先のバッファ。- 戻り値:
- バッファに読み込まれたバイトの合計数。ストリー の終わりに達してデータがない 合は
-1。 - スロー:
IOException- 入出力エラーが発生した 合。- 関連 目:
-
read
public int read(byte[] b, int off, int len) throws IOException 最大lenバイトのデータを、この入力ストリー からバイト配列に読み込みます。lenが0でない 合、このメソッドは入力の一部が利用できるようになるまでブロックされます。それ以外の 合、バイトは読み込まれず、0が返されます。- オーバーライド:
read、クラスInputStream- 実装要件:
- このメソッドは単純に
in.read(b, off, len)を実行し、その結果を返します。 - パラメータ:
b- データの読込み先のバッファ。off- データが書き込まれる配列bの開始オフセット。len- 読み込む最大バイト数。- 戻り値:
- バッファに読み込まれたバイトの合計数。ストリー の終わりに達してデータがない 合は
-1。 - スロー:
NullPointerException-bがnullである 合。IndexOutOfBoundsException-offが の値の 合、lenが の値の 合、あるいはlenがb.length - offより大きい 合IOException- 入出力エラーが発生した 合。- 関連 目:
-
skip
public long skip(long n) throws IOException 入力ストリー からnバイトのデータをスキップして 棄します。 さまざまな理由から、skipメソッドは指定よりも少ないバイト数しかスキップしないことがあります。0の 合もあります。 スキップされた実際のバイト数が返されます。- オーバーライド:
skip、クラスInputStream- 実装要件:
- このメソッドでは、単に
in.skip(n)を実行して結果を返します。 - パラメータ:
n- スキップされるバイト数。- 戻り値:
- 実際にスキップされたバイト数。
- スロー:
IOException-in.skip(n)がIOExceptionをスローする 合。- 関連 目:
-
available
public int available() throws IOExceptionこの入力ストリー のメソッドの次の呼出し側によって、ブロックせずにこの入力ストリー から読み込むことができる(またはスキップできる)推定バイト数を返します。 次の呼出し側は、同じスレッドの 合も別のスレッドの 合もあります。 このような多数のバイトを1回で読み込ん りスキップしたりすることでブロックすることはありませんが、読み込むまたはスキップするバイト数が少なくなることがあります。- オーバーライド:
available、クラスInputStream- 実装要件:
- このメソッドは、
in.available()の結果を返します。 - 戻り値:
- ブロックせずにこの入力ストリー から読み込むことができる(またはスキップできる)推定バイト数。
- スロー:
IOException- 入出力エラーが発生した 合。
-
close
public void close() throws IOExceptionこの入力ストリー を閉じて、そのストリー に関連するすべてのシステ ・リソースを解放します。- 定義:
close、インタフェースAutoCloseable- 定義:
close、インタフェースCloseable- オーバーライド:
close、クラスInputStream- 実装要件:
- このメソッドは単純に
in.close()を実行します。 - スロー:
IOException- 入出力エラーが発生した 合。- 関連 目:
-
mark
public void mark(int readlimit) この入力ストリー の現在位置にマークを設定します。 これに続いてresetメソッドを呼び出すと、最後にマークされた位置にこのストリー が再配置されるため、以降の読込みでは同じバイトが再度読み込まれます。引数
readlimitはこの入力ストリー に対して、マーク位置が無効になる前にこの引数が指定するバイト数を読み込むように指示します。- オーバーライド:
mark、クラスInputStream- 実装要件:
- このメソッドは単純に
in.mark(readlimit)を実行します。 - パラメータ:
readlimit- マーク位置が無効になる前に読込み可能なバイト数の上限。- 関連 目:
-
reset
public void reset() throws IOExceptionこのストリー を、この入力ストリー で最後にmarkメソッドが呼び出されたときの位置に再配置します。ストリー のマークは、ストリー に何が含まれているかをチェックするために、データを少し け先読みする必要がある 合に使われます。 これをもっとも容易に実行する方法は、一般的なパーサーを呼び出すことです。 ストリー がパーサーで取り扱えるタイプであれば、これでうまく行きます。 ストリー がこのようなタイプではない 合は、パーサーは失敗した時点で例外を発生させます。 readlimitバイトの範囲内でこれが発生した 合は、外部のコードでストリー をリセットし、別のパーサーを呼び出すことができます。
- オーバーライド:
reset、クラスInputStream- 実装要件:
- このメソッドは単純に
in.reset()を実行します。 - スロー:
IOException- ストリー にマークが設定されていなかった 合、またはマークが無効になっていた 合。- 関連 目:
-
markSupported
public boolean markSupported()この入力ストリー がmarkおよびresetメソッドをサポートしているかどうかを判定します。- オーバーライド:
markSupported、クラスInputStream- 実装要件:
- このメソッドは単純に
in.markSupported()を実行します。 - 戻り値:
- このストリー ・インスタンスが
markおよびresetメソッドをサポートしている 合はtrue、それ以外の 合はfalse。 - 関連 目:
-