|
Foundation 1.1.2 | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.io.InputStream java.io.FilterInputStream
public class FilterInputStream
FilterInputStream
は、データの基本的なソースとして使用するためのその他の入力ストリームを格納します。データを途中で変換することや、追加機能を提供することもあります。FilterInputStream
クラスそのものが、格納されている入力ストリームにすべての要求を渡すバージョンによって、InputStream
のすべてのメソッドを単純にオーバーライドします。FilterInputStream
のサブクラスは、これらのメソッドの一部をさらにオーバーライドすることができ、追加のメソッドやフィールドを提供することもできます。
フィールドの概要 | |
---|---|
protected InputStream |
in
フィルタ処理される入力ストリームです。 |
コンストラクタの概要 | |
---|---|
protected |
FilterInputStream(InputStream in)
あとで使用できるように引数 in を this.in フィールドに割り当てることによって、FilterInputStream を作成します。 |
メソッドの概要 | |
---|---|
int |
available()
ブロックせずに入力ストリームから読み込むことができるバイト数を返します。 |
void |
close()
この入力ストリームを閉じて、そのストリームに関連するすべてのシステムリソースを解放します。 |
void |
mark(int readlimit)
この入力ストリームの現在位置にマークを設定します。 |
boolean |
markSupported()
入力ストリームが mark と reset メソッドをサポートしているかどうかを判定します。 |
int |
read()
この入力ストリームからデータの次のバイトを読み込みます。 |
int |
read(byte[] b)
最大 byte.length バイトまでのデータを、この入力ストリームからバイト配列に読み込みます。 |
int |
read(byte[] b,
int off,
int len)
最大 len バイトまでのデータを、この入力ストリームからバイト配列に読み込みます。 |
void |
reset()
このストリームの位置を、入力ストリームで最後に mark メソッドが呼び出されたときのマーク位置に再設定します。 |
long |
skip(long n)
入力ストリームから n バイト分をスキップおよび破棄します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
protected InputStream in
コンストラクタの詳細 |
---|
protected FilterInputStream(InputStream in)
in
を this.in
フィールドに割り当てることによって、FilterInputStream
を作成します。
in
- 基本となる入力ストリーム。このインスタンスが基本となるストリームなしで生成される場合は null
メソッドの詳細 |
---|
public int read() throws IOException
0
〜 255
の範囲の int
として返されます。ストリームの終わりに達したために読み込むバイトがない場合は、値 -1
が返されます。入力データが読み込めるようになるか、ファイルの終わりが検出されるか、または例外が発生するまで、このメソッドはブロックされます。
このメソッドは単純に in.read()
を実行し、その結果を返します。
InputStream
内の read
-1
IOException
- 入出力エラーが発生した場合in
public int read(byte[] b) throws IOException
byte.length
バイトまでのデータを、この入力ストリームからバイト配列に読み込みます。このメソッドは、入力の一部が利用できるようになるまでブロックします。
このメソッドは単純に read(b, 0, b.length)
の呼び出しを実行し、その結果を返します。代わりに in.read(b)
が実行されないようにしてください。FilterInputStream
の特定のサブクラスは、実際に使用されている実装方法に依存します。
InputStream
内の read
b
- データの読み込み先のバッファー
-1
IOException
- 入出力エラーが発生した場合read(byte[], int, int)
public int read(byte[] b, int off, int len) throws IOException
len
バイトまでのデータを、この入力ストリームからバイト配列に読み込みます。このメソッドは、入力の一部が利用できるようになるまでブロックします。
このメソッドは単純に in.read(b, off, len)
を実行し、その結果を返します。
InputStream
内の read
b
- データの読み込み先のバッファーoff
- データの開始オフセットlen
- 読み込まれる最大バイト数
-1
IOException
- 入出力エラーが発生した場合in
public long skip(long n) throws IOException
n
バイト分をスキップおよび破棄します。さまざまな理由から、skip
メソッドは指定よりも少ないバイト数しかスキップしないことがあります。0
の場合もあります。スキップされた実際のバイト数が返されます。
このメソッドは単純に in.skip(n)
を実行します。
InputStream
内の skip
n
- スキップするバイト数
IOException
- 入出力エラーが発生した場合public int available() throws IOException
このメソッドは単純に in.available()
を実行し、その結果を返します。
InputStream
内の available
IOException
- 入出力エラーが発生した場合in
public void close() throws IOException
in.close()
を実行します。
InputStream
内の close
IOException
- 入出力エラーが発生した場合in
public void mark(int readlimit)
reset
メソッドを呼び出すと、最後にマークが設定された位置にストリームを再設定するため、次回の読み込み操作では同じバイトから読み込むことになります。
引数 readlimit
はこの入力ストリームに対して、マーク位置が無効になる前にこの引数が指定するバイト数を読み込むように指示します。
このメソッドは単純に in.mark(readlimit)
を実行します。
InputStream
内の mark
readlimit
- マーク位置が無効になる前に読み込み可能な最大限度のバイト数in
,
reset()
public void reset() throws IOException
mark
メソッドが呼び出されたときのマーク位置に再設定します。
このメソッドは単純に in.reset()
を実行します。
ストリームのマークは、ストリームに何が含まれているかをチェックするために、データを少しだけ先読みする必要がある場合に使われます。これをもっとも容易に実行する方法は、一般的なパーサーを呼び出すことです。ストリームがパーサーで取り扱えるタイプであれば、これでうまく行きます。ストリームがこのようなタイプではない場合は、パーサーは失敗した時点で例外を発生させます。readlimit バイトの範囲内でこれが発生した場合は、外部のコードでストリームをリセットし、別のパーサーを呼び出すことができます。
InputStream
内の reset
IOException
- ストリームにマークが設定されていなかった場合、またはマークが無効になっていた場合in
,
mark(int)
public boolean markSupported()
mark
と reset
メソッドをサポートしているかどうかを判定します。このメソッドは単純に in.markSupported()
を実行します。
InputStream
内の markSupported
mark
と reset
メソッドをサポートするタイプの場合は true
、そうでない場合は false
in
,
InputStream.mark(int)
,
InputStream.reset()
|
Foundation 1.1.2 | |||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。