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

クラスImageInputStreamImpl

java.lang.Object
javax.imageio.stream.ImageInputStreamImpl
すべての実装されたインタフェース:
Closeable, DataInput, AutoCloseable, ImageInputStream
直系の既知のサブクラス:
FileCacheImageInputStream, FileImageInputStream, ImageOutputStreamImpl, MemoryCacheImageInputStream

public abstract class ImageInputStreamImpl extends Object implements ImageInputStream
ImageInputStreamインタフェースを実装する抽象クラスです。 このクラスの目的は、サブクラスで実装する必要のあるメソッドの数を減らすことです。

特に、このクラスはバイト順の解釈、バッファリング、マーク付けとリセット、破棄、クローズ、および廃棄の大半またはすべてを処理します。

  • フィールドのサマリー

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

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

    修飾子と型
    メソッド
    説明
    protected final void
    ストリームが閉じられていた場合はIOExceptionをスローします。
    void
    ストリームを閉じます。
    protected void
    非推奨。
    finalizeメソッドは非推奨になっています。
    void
    現在のストリーム位置より前の初期のストリーム位置を破棄します。
    void
    flushBefore(long pos)
    指示された位置より前のストリームの先頭部分を破棄します。
    int
    現在のビット・オフセットを0から7までの整数として返します。
    このストリームから読み込まれるデータのバイト順を、java.nio.ByteOrder列挙のインスタンスとして返します。
    long
    シークが実行されるストリーム内の一番初期の位置を返します。
    long
    ストリームの現在のバイト位置を返します。
    boolean
    デフォルトの実装ではfalseを返します。
    boolean
    デフォルトの実装ではfalseを返します。
    boolean
    デフォルトの実装ではfalseを返します。
    long
    ストリームが未知の長さであることを示す-1Lを返します。
    void
    マーク付けされた位置のスタック上に現在のストリーム位置をプッシュします。
    abstract int
    ストリームから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
    ストリームから1ビットを読み込み、それを値0または1intとして返します。
    long
    readBits(int numBits)
    ストリームからビット列を読み込み、longとして返します。読み込んだ最初のビットが出力の最上位ビットになります。
    boolean
    ストリームから1バイトを読み込み、0でない場合はtrueboolean値を返し、0の場合はfalseを返します。
    byte
    ストリームから1バイトを読み込み、それをbyte値として返します。
    void
    readBytes(IIOByteBuffer buf, int len)
    ストリームからlenバイトまでを読み込み、指定されたIIOByteBufferを変更してデータを検出可能なバイト配列、オフセット、および長さを示します。
    char
    readUnsignedShortと同等、ただし結果はcharデータ型を使用して返されます。
    double
    ストリームから8バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をdouble値として返します。
    float
    ストリームから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
    ストリームから4バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をint値として返します。
    入力ストリームから、次の行のテキストを読み込みます。
    long
    ストリームから8バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をlong値として返します。
    short
    ストリームから2バイトを読み込み、現在のバイト順に従って概念上それらを連結して、結果をshort値として返します。
    int
    ストリームからバイトを読み込んで、概念上、整数に変換し、符号拡張ビットを取り除くためにそれを0xffでマスクして、byte値として返します。
    long
    ストリームから4バイトを読み込んで現在のバイト順に従って概念上それらを連結し、結果の値をlongに変換して、符号拡張ビットを取り除くために0xffffffffLでマスクします。その結果を符号なしlong値として返します。
    int
    ストリームから2バイトを読み込んで、現在のバイト順に従って概念上それらを連結し、結果として得られる値をintに変換して、符号拡張ビットを取り除くために0xffffでマスクします。その結果を符号なしint値として返します。
    修正UTF-8形式でエンコードされた文字列を読み込みます。
    void
    マーク付けされた位置のスタックから現在のストリーム・バイトおよびビット位置をリセットします。
    void
    seek(long pos)
    現在のストリーム位置を目的の位置に設定します。
    void
    setBitOffset(int bitOffset)
    ビット・オフセットに0から7までの整数を設定します。
    void
    このストリームからの今後のデータ値の読込みのために、バイト順を設定します。
    int
    skipBytes(int n)
    seek(getStreamPosition()+n)を呼び出して、現在のストリーム位置を前進させます。
    long
    skipBytes(long n)
    seek(getStreamPosition()+n)を呼び出して、現在のストリーム位置を前進させます。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • フィールド詳細

    • 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のいずれか(今後の読込みでネットワーク・バイト順またはその逆順のどちらを使用するかを示す)。
      関連項目:
    • getByteOrder

      public ByteOrder getByteOrder()
      インタフェースからコピーされた説明: ImageInputStream
      このストリームから読み込まれるデータのバイト順を、java.nio.ByteOrder列挙のインスタンスとして返します。
      定義:
      getByteOrder、インタフェースImageInputStream
      戻り値:
      ByteOrder.BIG_ENDIANまたはByteOrder.LITTLE_ENDIANのいずれか(使用されるバイト順を示す)。
      関連項目:
    • 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 - 入出力エラーが発生した場合。
      関連項目:
    • readUnsignedShort

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

      public boolean isCachedFile()
      デフォルトの実装ではfalseを返します。 サブクラスは、データを一時ファイルにキャッシュする場合はこれをオーバーライドする必要があります。
      定義:
      isCachedFile、インタフェースImageInputStream
      戻り値:
      このImageInputStreamがデータを一時ファイルにキャッシュする場合はtrue
      関連項目:
    • 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 - スーパー・クラスのファイナライズ時にエラーが発生した場合。
      関連項目: