モジュール java.base
パッケージ java.io

クラスSequenceInputStream

  • すべての実装されたインタフェース:
    Closeable, AutoCloseable


    public class SequenceInputStream
    extends InputStream
    SequenceInputStreamは、ほかの入力ストリームを論理的に連結したものを表します。 このメソッドは、入力ストリームを集めて順序を付けたコレクションから、始めにその最初のストリームをファイルの終わりまで読み込み、次に2番目に移ります。これを繰り返して、最後の入力ストリームでファイルの終わりに達するまで順次読み込みます。
    導入されたバージョン:
    1.0
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      SequenceInputStream​(InputStream s1, InputStream s2)
      2つの引数を記憶しておくことにより、新しく作成されたSequenceInputStreamを初期化します。2つの引数は、s1s2の順番で読み込まれ、それにより、このSequenceInputStreamから読み込まれるバイトが提供されます。
      SequenceInputStream​(Enumeration<? extends InputStream> e)
      引数を記憶しておくことにより、新しく作成されたSequenceInputStreamを初期化します。この引数は、実行時の型がInputStreamであるオブジェクトを生成するEnumerationである必要があります。
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 具象メソッド 
      修飾子と型 メソッド 説明
      int available​()
      現在のベースとなる入力ストリームに対するメソッドの次の呼出しによって、ブロックせずに現在のベースとなる入力ストリームから読み込むことができる(またはスキップできる)推定バイト数を返します。
      void close​()
      この入力ストリームを閉じて、そのストリームに関連するすべてのシステム・リソースを解放します。
      int read​()
      この入力ストリームからデータの次のバイトを読み込みます。
      int read​(byte[] b, int off, int len)
      最大lenバイトのデータを、この入力ストリームからバイト配列に読み込みます。
    • コンストラクタの詳細

      • SequenceInputStream

        public SequenceInputStream​(Enumeration<? extends InputStream> e)
        引数を記憶しておくことにより、新しく作成されたSequenceInputStreamを初期化します。この引数は、実行時の型がInputStreamであるオブジェクトを生成するEnumerationである必要があります。 このSequenceInputStreamから読み込まれるバイトを提供するために、列挙によって作成された入力ストリームが順番に読み込まれます。 列挙からの各入力ストリームの読込みが終わると、それぞれcloseメソッドの呼出しにより閉じられます。
        パラメータ:
        e - 入力ストリームの列挙。
        関連項目:
        Enumeration
      • SequenceInputStream

        public SequenceInputStream​(InputStream s1,
                                   InputStream s2)
        2つの引数を記憶しておくことにより、新しく作成されたSequenceInputStreamを初期化します。2つの引数は、s1s2の順番で読み込まれ、それにより、このSequenceInputStreamから読み込まれるバイトが提供されます。
        パラメータ:
        s1 - 読み込む最初の入力ストリーム。
        s2 - 読み込む2番目の入力ストリーム。
    • メソッドの詳細

      • available

        public int available​()
                      throws IOException
        現在のベースとなる入力ストリームに対するメソッドの次の呼出しによって、ブロックせずに現在のベースとなる入力ストリームから読み込むことができる(またはスキップできる)推定バイト数を返します。 次の呼出しは、同じスレッドの場合も別のスレッドの場合もあります。 このような多数のバイトを1回で読み込んだりスキップしたりすることでブロックすることはありませんが、読み込むまたはスキップするバイト数が少なくなることがあります。

        このメソッドは、現在のベースとなる入力ストリームのavailableを単純に呼び出し、結果を返します。

        オーバーライド:
        available、クラス: InputStream
        戻り値:
        ブロックせずに現在のベースとなる入力ストリームから読み込むことができる(またはスキップできる)推定バイト数、またはこの入力ストリームがclose()メソッドの呼出しによって閉じられた場合は0
        例外:
        IOException - 入出力エラーが発生した場合。
        導入されたバージョン:
        1.1
      • read

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

        このメソッドは、現在のサブストリームから1文字を読み込もうとします。 そのストリームの終わりに達すると、現在のサブストリームのcloseメソッドを呼び出し、次のサブストリームからの読込みを開始します。

        定義:
        read、クラス: InputStream
        戻り値:
        データの次のバイト。ストリームの終わりに達した場合は-1
        例外:
        IOException - 入出力エラーが発生した場合。
      • read

        public int read​(byte[] b,
                        int off,
                        int len)
                 throws IOException
        最大lenバイトのデータを、この入力ストリームからバイト配列に読み込みます。 lenが0でない場合、このメソッドは入力の少なくとも1バイトが利用できるようになるまでブロックします。それ以外の場合、バイトは読み込まれず、0が返されます。

        SequenceInputStreamreadメソッドは、現在のサブストリームからデータを読み込もうとします。 サブストリームがストリームの終わりに達したために文字の読込みに失敗すると、現在のサブストリームのcloseメソッドを呼び出し、次のサブストリームからの読込みを開始します。

        オーバーライド:
        read、クラス: InputStream
        パラメータ:
        b - データの読込み先のバッファ。
        off - データが書き込まれる配列bの開始オフセット。
        len - 読み込まれる最大バイト数。
        戻り値:
        読み込まれるバイト数。
        例外:
        NullPointerException - bnullである場合。
        IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、あるいはlenb.length - offより大きい場合
        IOException - 入出力エラーが発生した場合。
        関連項目:
        InputStream.read()
      • close

        public void close​()
                   throws IOException
        この入力ストリームを閉じて、そのストリームに関連するすべてのシステム・リソースを解放します。 閉じられたSequenceInputStreamは入力処理を実行できません。また、開き直すこともできません。

        このストリームが列挙から作成された場合、closeメソッドが復帰する前に、残りのすべての要素が列挙から要求されて閉じられます。

        定義:
        close、インタフェース: AutoCloseable
        定義:
        close、インタフェース: Closeable
        オーバーライド:
        close、クラス: InputStream
        例外:
        IOException - 入出力エラーが発生した場合。