モジュール java.desktop
パッケージ javax.imageio.stream

クラスImageInputStreamImpl

    • フィールドのサマリー

      フィールド 
      修飾子と型 フィールド 説明
      protected int bitOffset
      ストリーム内の現在のビット・オフセットです。
      protected ByteOrder byteOrder
      列挙クラスjava.nio.ByteOrderのインスタンスで表されるストリームのバイト順で、ByteOrder.BIG_ENDIANはネットワーク・バイト順、ByteOrder.LITTLE_ENDIANは逆順を示します。
      protected long flushedPos
      それより前のデータが破棄される位置です。
      protected long streamPos
      ストリーム内の現在の読込み位置です。
    • コンストラクタのサマリー

      コンストラクタ 
      コンストラクタ 説明
      ImageInputStreamImpl​()
      ImageInputStreamImplを構築します。
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 抽象メソッド 具象メソッド 非推奨のメソッド 
      修飾子と型 メソッド 説明
      protected void checkClosed​()
      ストリームが閉じられていた場合はIOExceptionをスローします。
      void close​()
      ストリームを閉じます。
      protected void finalize​()
      非推奨。 
      finalizeメソッドは推奨されていません。 クリーンアップを実行するためにfinalizeをオーバーライドするサブクラスは、代替クリーンアップ・メカニズムを使用し、オーバーライドするfinalizeメソッドを削除するように変更する必要があります。 finalizeメソッドをオーバーライドする場合、実装では、super.finalize()Object.finalize()の説明に従って呼び出されることを明示的に確認する必要があります。 移行オプションの詳細については、Object.finalize()の仕様を参照してください。
      void flush​()
      現在のストリーム位置より前の初期のストリーム位置を破棄します。
      void flushBefore​(long pos)
      指示された位置より前のストリームの先頭部分を破棄します。
      int getBitOffset​()
      現在のビット・オフセットを0から7までの整数として返します。
      ByteOrder getByteOrder​()
      このストリームから読み込まれるデータのバイト順を、java.nio.ByteOrder列挙のインスタンスとして返します。
      long getFlushedPosition​()
      シークが実行されるストリーム内の一番初期の位置を返します。
      long getStreamPosition​()
      ストリームの現在のバイト位置を返します。
      boolean isCached​()
      デフォルトの実装ではfalseを返します。
      boolean isCachedFile​()
      デフォルトの実装ではfalseを返します。
      boolean isCachedMemory​()
      デフォルトの実装ではfalseを返します。
      long length​()
      ストリームが未知の長さであることを示す-1Lを返します。
      void mark​()
      マーク付けされた位置のスタック上に現在のストリーム位置をプッシュします。
      abstract int read​()
      ストリームから1バイトを読み込み、それを0から255までのintとして返します。
      int read​(byte[] b)
      read(b, 0, b.length)を呼び出す簡易メソッドです。
      abstract int read​(byte[] b, int off, int len)
      ストリームから最大lenバイトを読み込み、bにインデックスoffから格納します。
      int readBit​()
      ストリームから1ビットを読み込み、それを値0または1intとして返します。
      long readBits​(int numBits)
      ストリームからビット列を読み込み、longとして返します。読み込んだ最初のビットが出力の最上位ビットになります。
      boolean readBoolean​()
      ストリームから1バイトを読み込み、0でない場合はtrueboolean値を返し、0の場合はfalseを返します。
      byte readByte​()
      ストリームから1バイトを読み込み、それをbyte値として返します。
      void readBytes​(IIOByteBuffer buf, int len)
      ストリームからlenバイトまでを読み込み、指定されたIIOByteBufferを変更してデータを検出可能なバイト配列、オフセット、および長さを示します。
      char readChar​()
      readUnsignedShortと同等、ただし結果はcharデータ型を使用して返されます。
      double readDouble​()
      ストリームから8バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をdouble値として返します。
      float readFloat​()
      ストリームから4バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をfloat値として返します。
      void readFully​(byte[] b)
      ストリームからb.lengthバイトを読み込み、bにインデックス0から格納します。
      void readFully​(byte[] b, int off, int len)
      ストリームからlenバイトを読み込み、bにインデックスoffから格納します。
      void readFully​(char[] c, int off, int len)
      ストリームから現在のバイト順に従ってlenバイトのchar (符号なし16ビット整数)値を読み込み、それらをcにインデックスoffから格納します。
      void readFully​(double[] d, int off, int len)
      ストリームから現在のバイト順に従ってlenバイトのdouble (64ビットIEEE倍精度浮動小数点数)値を読み込み、それらをdにインデックスoffから格納します。
      void readFully​(float[] f, int off, int len)
      ストリームから現在のバイト順に従ってlenバイトのfloat (32ビットIEEE単精度浮動小数点数)値を読み込み、それらをfにインデックスoffから格納します。
      void readFully​(int[] i, int off, int len)
      ストリームから現在のバイト順に従ってlenバイトのint (符号付き32ビット整数)値を読み込み、それらをiにインデックスoffから格納します。
      void readFully​(long[] l, int off, int len)
      ストリームから現在のバイト順に従ってlenバイトのlong (符号付き64ビット整数)値を読み込み、それらをlにインデックスoffから格納します。
      void readFully​(short[] s, int off, int len)
      ストリームから現在のバイト順に従ってlenバイトのshort (符号付き16ビット整数)値を読み込み、それらをsにインデックスoffから格納します。
      int readInt​()
      ストリームから4バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をint値として返します。
      String readLine​()
      入力ストリームから、次の行のテキストを読み込みます。
      long readLong​()
      ストリームから8バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をlong値として返します。
      short readShort​()
      ストリームから2バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をshort値として返します。
      int readUnsignedByte​()
      ストリームからバイトを読み込んで、概念上、整数に変換し、符号拡張ビットを取り除くためにそれを0xffでマスクして、byte値として返します。
      long readUnsignedInt​()
      ストリームから4バイトを読み込んで現在のバイト順に従って概念上それらを連結し、結果の値をlongに変換して、符号拡張ビットを取り除くために0xffffffffLでマスクします。その結果を符号なしlong値として返します。
      int readUnsignedShort​()
      ストリームから2バイトを読み込んで、現在のバイト順に従って概念上それらを連結し、結果として得られる値をintに変換して、符号拡張ビットを取り除くために0xffffでマスクします。その結果を符号なしint値として返します。
      String readUTF​()
      修正UTF-8形式でエンコードされた文字列を読み込みます。
      void reset​()
      マーク付けされた位置のスタックから現在のストリーム・バイトおよびビット位置をリセットします。
      void seek​(long pos)
      現在のストリーム位置を目的の位置に設定します。
      void setBitOffset​(int bitOffset)
      ビット・オフセットに0から7までの整数を設定します。
      void setByteOrder​(ByteOrder byteOrder)
      このストリームからの今後のデータ値の読込みのために、バイト順を設定します。
      int skipBytes​(int n)
      seek(getStreamPosition()+n)を呼び出して、現在のストリーム位置を前進させます。
      long skipBytes​(long n)
      seek(getStreamPosition()+n)を呼び出して、現在のストリーム位置を前進させます。
    • フィールドの詳細

      • byteOrder

        protected ByteOrder byteOrder
        列挙クラスjava.nio.ByteOrderのインスタンスで表されるストリームのバイト順で、ByteOrder.BIG_ENDIANはネットワーク・バイト順、ByteOrder.LITTLE_ENDIANは逆順を示します。 デフォルト値はByteOrder.BIG_ENDIANです。
      • streamPos

        protected long streamPos
        ストリーム内の現在の読込み位置です。 サブクラスがオーバーライドする、読込み位置を変更するすべてのメソッドからこの値を保護し、現状のままに保つことは、サブクラスの責任です。
      • bitOffset

        protected int bitOffset
        ストリーム内の現在のビット・オフセットです。 サブクラスがオーバーライドする、ビット・オフセットを変更するすべてのメソッドからこの値を保護し、現状のままに保つことは、サブクラスの責任です。
      • flushedPos

        protected long flushedPos
        それより前のデータが破棄される位置です。 これより前の位置にシークすることはできません。flushedPosは常に0以上になります。
    • コンストラクタの詳細

      • ImageInputStreamImpl

        public ImageInputStreamImpl​()
        ImageInputStreamImplを構築します。
    • メソッドの詳細

      • checkClosed

        protected final void checkClosed​()
                                  throws IOException
        ストリームが閉じられていた場合はIOExceptionをスローします。 サブクラスは、ストリームが開いていることが必要などのメソッドからも、このメソッドを呼び出すことができます。
        例外:
        IOException - ストリームが閉じられている場合。
      • setByteOrder

        public void setByteOrder​(ByteOrder byteOrder)
        インタフェースからコピーされた説明: ImageInputStream
        このストリームからの今後のデータ値の読込みのために、バイト順を設定します。 たとえば、’0x01 0x02 0x03 0x04’のバイト・シーケンスは、4バイト整数として読み込まれた場合、ネットワーク・バイト順を使用すると‘0x01020304’の値となり、逆バイト順では‘0x04030201’の値となります。

        列挙クラスjava.nio.ByteOrderを使用してバイト順を指定します。 ByteOrder.BIG_ENDIANでは、高位のバイトが先頭となる、いわゆるビッグエンディアン(ネットワーク・バイト順)が指定されます。 MotorolaとSparcプロセッサはデータをこの形式で格納します。一方Intelプロセッサは、データを逆順のByteOrder.LITTLE_ENDIANで格納します。

        バイト順は、readBitsメソッドから返される結果(ImageOutputStream.writeBitsにより書き込まれる値)には影響を与えません。

        定義:
        setByteOrder、インタフェース: ImageInputStream
        パラメータ:
        byteOrder - ByteOrder.BIG_ENDIANまたはjava.nio.ByteOrder.LITTLE_ENDIANのいずれか(今後の読込みでネットワーク・バイト順またはその逆順のどちらを使用するかを示す)。
        関連項目:
        ByteOrder, ImageInputStream.getByteOrder(), ImageInputStream.readBits(int)
      • read

        public abstract int read​()
                          throws IOException
        ストリームから1バイトを読み込み、それを0から255までのintとして返します。 EOFに達すると-1を返します。

        サブクラスでこのメソッドを実装する必要があります。 サブクラス実装で終了する前にストリーム位置を更新します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットする必要があります。

        定義:
        read、インタフェース: ImageInputStream
        戻り値:
        ストリーム内の次のバイトの値。または、EOFに達した場合は-1
        例外:
        IOException - ストリームが閉じられている場合。
      • read

        public int read​(byte[] b)
                 throws IOException
        read(b, 0, b.length)を呼び出す簡易メソッドです。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        read、インタフェース: ImageInputStream
        パラメータ:
        b - 書き込まれるバイト配列。
        戻り値:
        実際に読み込まれたバイト数、またはEOFを示す-1
        例外:
        NullPointerException - bnullの場合。
        IOException - 入出力エラーが発生した場合。
      • read

        public abstract int read​(byte[] b,
                                 int off,
                                 int len)
                          throws IOException
        ストリームから最大lenバイトを読み込み、bにインデックスoffから格納します。 ストリームの終わりに達したためにバイトを読み込めない場合は、-1を返します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットする必要があります。

        サブクラスでこのメソッドを実装する必要があります。 サブクラス実装で終了する前にストリーム位置を更新します。

        定義:
        read、インタフェース: ImageInputStream
        パラメータ:
        b - 書き込まれるバイト配列。
        off - 書込み先のb内の開始位置。
        len - 読み込む最大バイト数。
        戻り値:
        実際に読み込まれたバイト数、またはEOFを示す-1
        例外:
        IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、またはoff+lenb.lengthより大きい場合。
        NullPointerException - bnullの場合。
        IOException - 入出力エラーが発生した場合。
      • readBytes

        public void readBytes​(IIOByteBuffer buf,
                              int len)
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームからlenバイトまでを読み込み、指定されたIIOByteBufferを変更してデータを検出可能なバイト配列、オフセット、および長さを示します。 呼出し側で、IIOByteBufferで検出されたデータを変更してはいけません。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readBytes、インタフェース: ImageInputStream
        パラメータ:
        buf - 変更されるIIOByteBufferオブジェクト。
        len - 読み込む最大byte数。
        例外:
        IOException - 入出力エラーが発生した場合。
      • readBoolean

        public boolean readBoolean​()
                            throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから1バイトを読み込み、0でない場合はtrueboolean値を返し、0の場合はfalseを返します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readBoolean、インタフェース: DataInput
        定義:
        readBoolean、インタフェース: ImageInputStream
        戻り値:
        ストリームからのboolean値
        例外:
        EOFException - ストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readByte

        public byte readByte​()
                      throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから1バイトを読み込み、それをbyte値として返します。 0x00から0x7fまでのバイト値は0から127までの整数を表します。 0x80から0xffまでの値は-128から/1までの負の値を表します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readByte、インタフェース: DataInput
        定義:
        readByte、インタフェース: ImageInputStream
        戻り値:
        ストリームからの符号付きバイト値
        例外:
        EOFException - ストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readUnsignedByte

        public int readUnsignedByte​()
                             throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームからバイトを読み込んで、概念上、整数に変換し、符号拡張ビットを取り除くためにそれを0xffでマスクして、byte値として返します。

        したがって、0x00から0x7fまでのバイト値は0から127までの整数値として単純に返されます。 通常は負のbyte 値を表す0x80から0xffまでの値は、128から255までの正の整数に対応付けされます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readUnsignedByte、インタフェース: DataInput
        定義:
        readUnsignedByte、インタフェース: ImageInputStream
        戻り値:
        ストリームからの符号なしバイト値
        例外:
        EOFException - ストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readShort

        public short readShort​()
                        throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから2バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をshort値として返します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readShort、インタフェース: DataInput
        定義:
        readShort、インタフェース: ImageInputStream
        戻り値:
        ストリームからの符号付きshort値
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.getByteOrder()
      • readUnsignedShort

        public int readUnsignedShort​()
                              throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから2バイトを読み込んで、現在のバイト順に従って概念上それらを連結し、結果として得られる値をintに変換して、符号拡張ビットを取り除くために0xffffでマスクします。その結果を符号なしint値として返します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readUnsignedShort、インタフェース: DataInput
        定義:
        readUnsignedShort、インタフェース: ImageInputStream
        戻り値:
        ストリームからの符号なしshort値のint
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.getByteOrder()
      • readChar

        public char readChar​()
                      throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        readUnsignedShortと同等、ただし結果はcharデータ型を使用して返されます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readChar、インタフェース: DataInput
        定義:
        readChar、インタフェース: ImageInputStream
        戻り値:
        ストリームからの符号なしchar値
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.readUnsignedShort()
      • readInt

        public int readInt​()
                    throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから4バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をint値として返します。

        ストリーム内のビット・オフセットは無視され、0として扱われます。

        定義:
        readInt、インタフェース: DataInput
        定義:
        readInt、インタフェース: ImageInputStream
        戻り値:
        ストリームからの符号付きint値
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.getByteOrder()
      • readUnsignedInt

        public long readUnsignedInt​()
                             throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから4バイトを読み込んで現在のバイト順に従って概念上それらを連結し、結果の値をlongに変換して、符号拡張ビットを取り除くために0xffffffffLでマスクします。その結果を符号なしlong値として返します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readUnsignedInt、インタフェース: ImageInputStream
        戻り値:
        ストリームからの符号なしint値(long)
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.getByteOrder()
      • readLong

        public long readLong​()
                      throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから8バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をlong値として返します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readLong、インタフェース: DataInput
        定義:
        readLong、インタフェース: ImageInputStream
        戻り値:
        ストリームからの符号付きlong値
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.getByteOrder()
      • readFloat

        public float readFloat​()
                        throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから4バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をfloat値として返します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readFloat、インタフェース: DataInput
        定義:
        readFloat、インタフェース: ImageInputStream
        戻り値:
        ストリームからのfloat値
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.getByteOrder()
      • readDouble

        public double readDouble​()
                          throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから8バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をdouble値として返します。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readDouble、インタフェース: DataInput
        定義:
        readDouble、インタフェース: ImageInputStream
        戻り値:
        ストリームからのdouble値
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.getByteOrder()
      • readLine

        public String readLine​()
                        throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        入力ストリームから、次の行のテキストを読み込みます。 このメソッドは、行末記号またはファイルの終わりを検出するまで、連続するバイトを読み込んで、各バイトをそれぞれ文字に変換します。読み込まれた文字は次に、Stringとして返されます。 このメソッドはバイトを処理するものなので、Unicode文字セットの入力を完全にはサポートしません。

        ファイルの終わりが検出されるまでに1バイトも読み込めなかった場合には、nullが返されます。 それ以外の場合、読み込まれた各バイトはゼロ拡張によってchar型に変換されます。 文字'\n'が検出されると、この文字は破棄され、読込みは中止されます。 文字'\r'が検出されると、この文字は破棄され、その次のバイトが文字'\n'に変換されますが、この文字も破棄されて、読込みが中止されます。 文字'\n'と文字'\r'のどちらかより前にファイルの終わりが検出されると、読込みが中止されます。 読込みが中止されると、読み込まれて破棄されていないすべての文字を取り込んだ順番で格納しているStringが返されます。 この文字列のそれぞれの文字は\u0100、つまり(char)256より小さい値を持ちます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readLine、インタフェース: DataInput
        定義:
        readLine、インタフェース: ImageInputStream
        戻り値:
        ストリームからのテキスト行を含むString
        例外:
        IOException - 入出力エラーが発生した場合。
      • readUTF

        public String readUTF​()
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        修正UTF-8形式でエンコードされた文字列を読み込みます。 readUTFの汎用規約では、修正UTF-8形式でエンコードされたUnicode文字列の表現を読み込みます。読み込まれた文字列は、Stringとして返されます。

        まず、2バイトを読み込み、それを使ってreadUnsignedShortメソッドとまったく同じ方法で符号なし16ビット整数を作成します。この際、現在のバイト順の設定に関係なくネットワーク・バイト順を使用します。 この整数値はUTF長と呼ばれ、読み込まれる追加のバイト数を表します。 次に、このバイトがグループ単位で文字に変換されます。 各グループの長さは、グループの先頭バイトの値から計算されます。 グループに後続のバイトがあれば、それは次のグループの先頭バイトです。

        グループの先頭バイトがビット・パターンの0xxxxxxx (ただし、x0または1を意味します)に一致する場合、グループはそのバイトだけで構成されます。 バイトはゼロ拡張されて単一の文字を表現します。

        グループの先頭バイトがビット・パターン110xxxxxに一致する場合、そのグループはそのバイトaと2番目のバイトbから構成されます。 バイトbが存在しない場合(バイトaが読み込まれた最後のバイトだった場合)や、バイトbがビット・パターン10xxxxxxに一致しない場合には、UTFDataFormatExceptionがスローされます。 そうでない場合、グループは次の文字に変換されます。

        
         (char)(((a& 0x1F) << 6) | (b & 0x3F))
         
        グループの先頭バイトがビット・パターン1110xxxxに一致する場合、そのグループは先頭バイトaに加えて、2つのバイトbcから構成されます。 バイトcが存在しない場合(バイトaが読み込まれた一連のバイトの最後の2つに入っていた場合)や、バイトbまたはcがビット・パターン10xxxxxxに一致しない場合には、UTFDataFormatExceptionがスローされます。 そうでない場合、グループは次の文字に変換されます。
        
         (char)(((a & 0x0F) << 12) | ((b & 0x3F) << 6) | (c & 0x3F))
         
        グループの先頭バイトがパターン1111xxxxかパターン10xxxxxxに一致する場合、UTFDataFormatExceptionがスローされます。

        このプロセス全体の中でいつでもファイルの終わりが見つかると、java.io.EOFExceptionがスローされます。

        各グループがこの処理で1文字に変換されると、対応するグループが入力ストリームから読み込まれたのと同じ順序で各文字が収集され、Stringを表現します。そして、このStringが返されます。

        現在のバイト順の設定は無視されます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        注: ここで使用される修正UTF-8は標準UTF-8と互換性がありません。このため、標準UTF-8を使用するイメージ形式の実装ではこのメソッドを使用しないでください。

        定義:
        readUTF、インタフェース: DataInput
        定義:
        readUTF、インタフェース: ImageInputStream
        戻り値:
        ストリームから読み込まれたString
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        UTFDataFormatException - 文字列中のバイトが、有効な修正UTF-8形式でエンコードされた文字列以外であった場合。
        IOException - 入出力エラーが発生した場合。
      • readFully

        public void readFully​(byte[] b,
                              int off,
                              int len)
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームからlenバイトを読み込み、bにインデックスoffから格納します。 ストリームの終わりに達すると、java.io.EOFExceptionがスローされます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readFully、インタフェース: DataInput
        定義:
        readFully、インタフェース: ImageInputStream
        パラメータ:
        b - 書き込まれるバイト配列。
        off - 書込み先のb内の開始位置。
        len - 読み込む最大byte数。
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readFully

        public void readFully​(byte[] b)
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームからb.lengthバイトを読み込み、bにインデックス0から格納します。 ストリームの終わりに達すると、java.io.EOFExceptionがスローされます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readFully、インタフェース: DataInput
        定義:
        readFully、インタフェース: ImageInputStream
        パラメータ:
        b - byteの配列。
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readFully

        public void readFully​(short[] s,
                              int off,
                              int len)
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから現在のバイト順に従ってlenバイトのshort (符号付き16ビット整数)値を読み込み、それらをsにインデックスoffから格納します。 ストリームの終わりに達すると、java.io.EOFExceptionがスローされます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readFully、インタフェース: ImageInputStream
        パラメータ:
        s - 書き込まれるshort配列。
        off - 書込み先のs内の開始位置。
        len - 読み込む最大short数。
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readFully

        public void readFully​(char[] c,
                              int off,
                              int len)
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから現在のバイト順に従ってlenバイトのchar (符号なし16ビット整数)値を読み込み、それらをcにインデックスoffから格納します。 ストリームの終わりに達すると、java.io.EOFExceptionがスローされます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readFully、インタフェース: ImageInputStream
        パラメータ:
        c - 書き込まれるchar配列。
        off - 書込み先のc内の開始位置。
        len - 読み込む最大char数。
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readFully

        public void readFully​(int[] i,
                              int off,
                              int len)
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから現在のバイト順に従ってlenバイトのint (符号付き32ビット整数)値を読み込み、それらをiにインデックスoffから格納します。 ストリームの終わりに達すると、java.io.EOFExceptionがスローされます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readFully、インタフェース: ImageInputStream
        パラメータ:
        i - 書き込まれるint配列。
        off - 書込み先のi内の開始位置。
        len - 読み込む最大int数。
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readFully

        public void readFully​(long[] l,
                              int off,
                              int len)
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから現在のバイト順に従ってlenバイトのlong (符号付き64ビット整数)値を読み込み、それらをlにインデックスoffから格納します。 ストリームの終わりに達すると、java.io.EOFExceptionがスローされます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readFully、インタフェース: ImageInputStream
        パラメータ:
        l - 書き込まれるlong配列。
        off - 書込み先のl内の開始位置。
        len - 読み込む最大long数。
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readFully

        public void readFully​(float[] f,
                              int off,
                              int len)
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから現在のバイト順に従ってlenバイトのfloat (32ビットIEEE単精度浮動小数点数)値を読み込み、それらをfにインデックスoffから格納します。 ストリームの終わりに達すると、java.io.EOFExceptionがスローされます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readFully、インタフェース: ImageInputStream
        パラメータ:
        f - 書き込まれるfloat配列。
        off - 書込み先のf内の開始位置。
        len - 読み込む最大float数。
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readFully

        public void readFully​(double[] d,
                              int off,
                              int len)
                       throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから現在のバイト順に従ってlenバイトのdouble (64ビットIEEE倍精度浮動小数点数)値を読み込み、それらをdにインデックスoffから格納します。 ストリームの終わりに達すると、java.io.EOFExceptionがスローされます。

        ストリーム内のビット・オフセットは、読込みを行う前に0にリセットされます。

        定義:
        readFully、インタフェース: ImageInputStream
        パラメータ:
        d - 書き込まれるdouble配列。
        off - 書込み先のd内の開始位置。
        len - 読み込む最大double数。
        例外:
        EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • getStreamPosition

        public long getStreamPosition​()
                               throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームの現在のバイト位置を返します。 次の読込みはこのオフセットから開始されます。
        定義:
        getStreamPosition、インタフェース: ImageInputStream
        戻り値:
        ストリームの位置を含むlong
        例外:
        IOException - 入出力エラーが発生した場合。
      • getBitOffset

        public int getBitOffset​()
                         throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        現在のビット・オフセットを0から7までの整数として返します。 ビット・オフセットは、readBitsメソッドの呼出しで暗黙的に更新されます。 値0は読み込まれるバイトの最上位ビット、値7は最下位ビットを示します。

        ビット・オフセットは、ストリームを最初に開くときに0に設定され、seekskipBytes、またはreadreadFullyメソッドのいずれかが呼び出されると0にリセットされます。

        定義:
        getBitOffset、インタフェース: ImageInputStream
        戻り値:
        0から7までのオフセット値を含むint
        例外:
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.setBitOffset(int)
      • setBitOffset

        public void setBitOffset​(int bitOffset)
                          throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ビット・オフセットに0から7までの整数を設定します。 getStreamPositionから返される、ストリーム内のバイト・オフセットは変更されません。 値0は読み込まれるバイトの最上位ビット、値7は最下位ビットを示します。
        定義:
        setBitOffset、インタフェース: ImageInputStream
        パラメータ:
        bitOffset - 目的のオフセットで、0から7までのint
        例外:
        IOException - 入出力エラーが発生した場合。
        関連項目:
        ImageInputStream.getBitOffset()
      • readBit

        public int readBit​()
                    throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームから1ビットを読み込み、それを値0または1intとして返します。 ビット・オフセットは1ずつ増加し、8を法として減分します。
        定義:
        readBit、インタフェース: ImageInputStream
        戻り値:
        0または1int
        例外:
        EOFException - すべてのビットを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • readBits

        public long readBits​(int numBits)
                      throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームからビット列を読み込み、longとして返します。読み込んだ最初のビットが出力の最上位ビットになります。 読込みは、getStreamPositionで指定されるバイト内のgetBitOffsetで指定されるビット位置から開始されます。 ビット・オフセットはnumBitsだけ増加し、8を法として減分します。

        ストリームのバイト順はこのメソッドに影響しません。 このメソッドの戻り値はビットが同時に読み込まれたかのように構築され、戻り値の右側にシフトされます。これを次の擬似コードで示します。

        
         long accum = 0L;
         for (int i = 0; i < numBits; i++) {
           accum <<= 1; // Shift left one bit to make room
           accum |= readBit();
         }
         
        したがって、逆ネットワーク・バイト順が使用されている場合(つまり、getByteOrder()== false)、readBits(32)の結果がreadInt()の結果と異なる場合があります。

        すべてのビットが読み込まれる前にストリームの終わりに遭遇すると、java.io.EOFExceptionがスローされます。

        定義:
        readBits、インタフェース: ImageInputStream
        パラメータ:
        numBits - 読み込むビット数を示す0から64までのint
        戻り値:
        最後に読み込んだビットを最下位ビットに格納したlongのビット列。
        例外:
        EOFException - すべてのビットを読み込む前に、このストリームの終わりに達した場合。
        IOException - 入出力エラーが発生した場合。
      • length

        public long length​()
        ストリームが未知の長さであることを示す-1Lを返します。 サブクラスでこのメソッドをオーバーライドして、実際の長さの情報を指定する必要があります。
        定義:
        length、インタフェース: ImageInputStream
        戻り値:
        未知の長さを示す -1L
      • skipBytes

        public int skipBytes​(int n)
                      throws IOException
        seek(getStreamPosition()+n)を呼び出して、現在のストリーム位置を前進させます。

        ビット・オフセットは0にリセットされます。

        定義:
        skipBytes、インタフェース: DataInput
        定義:
        skipBytes、インタフェース: ImageInputStream
        パラメータ:
        n - 前方にシークするバイト数。
        戻り値:
        スキップされたバイト数を示すint
        例外:
        IOException - 開始または終了位置を計算する際にgetStreamPositionIOExceptionをスローする場合。
      • skipBytes

        public long skipBytes​(long n)
                       throws IOException
        seek(getStreamPosition()+n)を呼び出して、現在のストリーム位置を前進させます。

        ビット・オフセットは0にリセットされます。

        定義:
        skipBytes、インタフェース: ImageInputStream
        パラメータ:
        n - 前方にシークするバイト数。
        戻り値:
        スキップされたバイト数を示すlong
        例外:
        IOException - 開始または終了位置を計算する際にgetStreamPositionIOExceptionをスローする場合。
      • seek

        public void seek​(long pos)
                  throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        現在のストリーム位置を目的の位置に設定します。 次回の読込みはこの位置で行われます。 ビット・オフセットは0に設定されます。

        posgetflushedPositionから返されるフラッシュ位置よりも小さい場合は、IndexOutOfBoundsExceptionがスローされます。

        ファイルの最後を追い抜くことは合法です。java.io.EOFExceptionは、読み取りが実行された場合にのみスローされます。

        定義:
        seek、インタフェース: ImageInputStream
        パラメータ:
        pos - 目的のファイル・ポインタ位置を示すlong
        例外:
        IOException - その他の入出力エラーが発生した場合。
      • mark

        public void mark​()
        マーク付けされた位置のスタック上に現在のストリーム位置をプッシュします。
        定義:
        mark、インタフェース: ImageInputStream
      • reset

        public void reset​()
                   throws IOException
        マーク付けされた位置のスタックから現在のストリーム・バイトおよびビット位置をリセットします。

        以前にマーク付けされた位置がストリームの破棄された部分である場合にはIOExceptionがスローされます。

        定義:
        reset、インタフェース: ImageInputStream
        例外:
        IOException - 入出力エラーが発生した場合。
      • flushBefore

        public void flushBefore​(long pos)
                         throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        指示された位置より前のストリームの先頭部分を破棄します。 ストリームのフラッシュされた部分内のオフセットにシークしようとすると、IndexOutOfBoundsExceptionがスローされます。

        flushBeforeを呼び出すと、このインタフェースを実装するクラスが、ストリームからデータを格納するのに使用するメモリーやディスク・スペースなどのリソースを解放できます。

        定義:
        flushBefore、インタフェース: ImageInputStream
        パラメータ:
        pos - フラッシュされるストリーム接頭辞の長さを示すlong
        例外:
        IOException - 入出力エラーが発生した場合。
      • flush

        public void flush​()
                   throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        現在のストリーム位置より前の初期のストリーム位置を破棄します。 flushBefore(getStreamPosition())と同等です。
        定義:
        flush、インタフェース: ImageInputStream
        例外:
        IOException - 入出力エラーが発生した場合。
      • getFlushedPosition

        public long getFlushedPosition​()
        インタフェースからコピーされた説明: ImageInputStream
        シークが実行されるストリーム内の一番初期の位置を返します。 戻り値は、以前のflushBefore呼出しに渡されたすべての値の最大値になります。
        定義:
        getFlushedPosition、インタフェース: ImageInputStream
        戻り値:
        一番初期の正当なシーク位置を示すlong
      • isCached

        public boolean isCached​()
        デフォルトの実装ではfalseを返します。 サブクラスは、データをキャッシュに格納する場合はこれをオーバーライドする必要があります。
        定義:
        isCached、インタフェース: ImageInputStream
        戻り値:
        このImageInputStreamがデータをキャッシュに格納する場合はtrue
        関連項目:
        ImageInputStream.isCachedMemory(), ImageInputStream.isCachedFile()
      • isCachedMemory

        public boolean isCachedMemory​()
        デフォルトの実装ではfalseを返します。 サブクラスは、データをメイン・メモリーにキャッシュする場合はこれをオーバーライドする必要があります。
        定義:
        isCachedMemory、インタフェース: ImageInputStream
        戻り値:
        このImageInputStreamがデータをメイン・メモリーにキャッシュする場合はtrue
        関連項目:
        ImageInputStream.isCached(), ImageInputStream.isCachedFile()
      • isCachedFile

        public boolean isCachedFile​()
        デフォルトの実装ではfalseを返します。 サブクラスは、データを一時ファイルにキャッシュする場合はこれをオーバーライドする必要があります。
        定義:
        isCachedFile、インタフェース: ImageInputStream
        戻り値:
        このImageInputStreamがデータを一時ファイルにキャッシュする場合はtrue
        関連項目:
        ImageInputStream.isCached(), ImageInputStream.isCachedMemory()
      • close

        public void close​()
                   throws IOException
        インタフェースからコピーされた説明: ImageInputStream
        ストリームを閉じます。 閉じたストリームにアクセスしようとすると、IOExceptionがスローされるか不正な動作が実行される場合があります。 このメソッドを呼び出すと、このインタフェースを実装するクラスが、メモリー、ディスク・スペース、またはファイル記述子などのストリームに関連するリソースを解放できます。
        定義:
        close、インタフェース: AutoCloseable
        定義:
        close、インタフェース: Closeable
        定義:
        close、インタフェース: ImageInputStream
        例外:
        IOException - 入出力エラーが発生した場合。
      • finalize

        @Deprecated(since="9")
        protected void finalize​()
                         throws Throwable
        非推奨。 finalizeメソッドは推奨されていません。 クリーンアップを実行するためにfinalizeをオーバーライドするサブクラスは、代替クリーンアップ・メカニズムを使用し、オーバーライドするfinalizeメソッドを削除するように変更する必要があります。 finalizeメソッドをオーバーライドする場合、実装では、super.finalize()Object.finalize()の説明に従って呼び出されることを明示的に確認する必要があります。 移行オプションの詳細については、Object.finalize()の仕様を参照してください。
        ガベージ・コレクションの前にこのオブジェクトをファイナライズします。 closeメソッドを呼び出して、開いている入力ソースをすべて閉じます。 このメソッドを、アプリケーション・コードから呼び出してはいけません。
        オーバーライド:
        finalize、クラス: Object
        例外:
        Throwable - スーパー・クラスのファイナライズ時にエラーが発生した場合。
        関連項目:
        WeakReference, PhantomReference