public class SequenceInputStream extends InputStream
SequenceInputStream
は、ほかの入力ストリームを論理的に連結したものを表します。このメソッドは、入力ストリームを集めて順序を付けたコレクションから、始めにその最初のストリームをファイルの終わりまで読み込み、次に 2 番目に移ります。これを繰り返して、最後の入力ストリームでファイルの終わりに達するまで順次読み込みます。コンストラクタと説明 |
---|
SequenceInputStream(Enumeration<? extends InputStream> e)
引数を記憶しておくことにより、新しく作成された
SequenceInputStream を初期化します。この引数は、実行時の型が InputStream であるオブジェクトを生成する Enumeration である必要があります。 |
SequenceInputStream(InputStream s1, InputStream s2)
2 つの引数を記憶しておくことにより、新しく作成された
SequenceInputStream を初期化します。2 つの引数は、s1 、s2 の順番で読み込まれ、それにより、この SequenceInputStream から読み込まれるバイトが提供されます。 |
修飾子と型 | メソッドと説明 |
---|---|
int |
available()
現在のベースとなる入力ストリームに対するメソッドの次の呼び出しによって、ブロックせずに現在のベースとなる入力ストリームから読み込むことができる (またはスキップできる) 推定バイト数を返します。
|
void |
close()
この入力ストリームを閉じて、そのストリームに関連するすべてのシステムリソースを解放します。
|
int |
read()
この入力ストリームからデータの次のバイトを読み込みます。
|
int |
read(byte[] b, int off, int len)
最大
len バイトのデータを、この入力ストリームからバイト配列に読み込みます。 |
mark, markSupported, read, reset, skip
public SequenceInputStream(Enumeration<? extends InputStream> e)
SequenceInputStream
を初期化します。この引数は、実行時の型が InputStream
であるオブジェクトを生成する Enumeration
である必要があります。この SequenceInputStream
から読み込まれるバイトを提供するために、列挙によって作成された入力ストリームが順番に読み込まれます。列挙からの各入力ストリームの読み込みが終わると、それぞれ close
メソッドの呼び出しにより閉じられます。e
- 入力ストリームの列挙。Enumeration
public SequenceInputStream(InputStream s1, InputStream s2)
SequenceInputStream
を初期化します。2 つの引数は、s1
、s2
の順番で読み込まれ、それにより、この SequenceInputStream
から読み込まれるバイトが提供されます。s1
- 読み込む最初の入力ストリーム。s2
- 読み込む 2 番目の入力ストリーム。public int available() throws IOException
このメソッドは、現在のベースとなる入力ストリームの available
を単純に呼び出し、結果を返します。
available
、クラス: InputStream
close()
メソッドの呼び出しによって閉じられた場合は 0
IOException
- 入出力エラーが発生した場合。public int read() throws IOException
0
から 255
の範囲の int
として返されます。ストリームの終わりに達したために読み込むバイトがない場合は、-1
が返されます。入力データが読み込めるようになるか、ストリームの終わりが検出されるか、または例外が発生するまで、このメソッドはブロックされます。
このメソッドは、現在のサブストリームから 1 文字を読み込もうとします。そのストリームの終わりに達すると、現在のサブストリームの close
メソッドを呼び出し、次のサブストリームからの読み込みを開始します。
read
、クラス: InputStream
-1
。IOException
- 入出力エラーが発生した場合。public int read(byte[] b, int off, int len) throws IOException
len
バイトのデータを、この入力ストリームからバイト配列に読み込みます。len
が 0 でない場合、このメソッドは入力の少なくとも 1 バイトが利用できるようになるまでブロックします。それ以外の場合、バイトは読み込まれず、0
が返されます。
SequenceInputStream
の read
メソッドは、現在のサブストリームからデータを読み込もうとします。サブストリームがストリームの終わりに達したために文字の読み込みに失敗すると、現在のサブストリームの close
メソッドを呼び出し、次のサブストリームからの読み込みを開始します。
read
、クラス: InputStream
b
- データの読み込み先のバッファー。off
- データが書き込まれる配列 b
の開始オフセット。len
- 読み込まれる最大バイト数。NullPointerException
- b
が null
である場合。IndexOutOfBoundsException
- off
が負の値の場合、len
が負の値の場合、あるいは len
が b.length - off
より大きい場合IOException
- 入出力エラーが発生した場合。InputStream.read()
public void close() throws IOException
SequenceInputStream
は入力処理を実行できません。また、開き直すこともできません。
このストリームが列挙から作成された場合、close
メソッドが復帰する前に、残りのすべての要素が列挙から要求されて閉じられます。
close
、インタフェース: Closeable
close
、インタフェース: AutoCloseable
close
、クラス: InputStream
IOException
- 入出力エラーが発生した場合。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.