インタフェースImageOutputStream

すべてのスーパー・インタフェース:
AutoCloseable, Closeable, DataInput, DataOutput, ImageInputStream
既知のすべての実装クラス:
FileCacheImageOutputStream, FileImageOutputStream, ImageOutputStreamImpl, MemoryCacheImageOutputStream

public interface ImageOutputStream extends ImageInputStream, DataOutput
ImageWriterで使用されるシーク可能な出力ストリーム・インタフェースです。 OutputStreamFileなどのさまざまな出力先、および将来の高速な入出力先をこのインタフェースの適切な実装で「ラップ」することで、イメージ入出力APIから使用可能にできます。

標準のOutputStreamとは異なり、ImageOutputStreamは対応するImageInputStreamを拡張します。 したがって、書き込まれた形式のままでストリームから読み込むことができます。 同一のシークおよびフラッシュ位置が読み込みと書込みの両方に適用されます。ただし、バイト整列された書込み前のゼロ以外のビット・オフセットに対応するセマンティックスと、バイト整列された読込み前のゼロ以外のビット・オフセットに対応するセマンティックスは必然的に異なります。 バイトを読み込む場合、すべてのビット・オフセットは読み込む前に0に設定され、バイトを書き込む場合、ゼロ以外のビット・オフセットではバイトの残りのビットが0として書き込まれます。 バイト整列された書込みは、次のバイト位置から開始されます。

関連項目:
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    flushBefore(long pos)
    指定された位置より前のデータをすべて、OutputStreamFileなどの基本となる出力先にフラッシュします。
    void
    write(byte[] b)
    バイトのシーケンスをストリームの現在位置に書き込みます。
    void
    write(byte[] b, int off, int len)
    バイトのシーケンスをストリームの現在位置に書き込みます。
    void
    write(int b)
    ストリームの現在の位置に1バイト書き込みます。
    void
    writeBit(int bit)
    引数の最下位ビットで指定された1ビットを、ストリームの現在のバイト位置の現在のビット・オフセットに書き込みます。
    void
    writeBits(long bits, int numBits)
    bits引数の下位numBitsビットのビット・シーケンスを左から右に、ストリームの現在のバイト位置の現在のビット・オフセットに書き込みます。
    void
    writeBoolean(boolean v)
    ストリームにboolean値を書き込みます。
    void
    writeByte(int v)
    vの下位8ビットをストリームに書き込みます。
    void
    文字列を出力ストリームに書き込みます。
    void
    writeChar(int v)
    このメソッドはwriteShortと同義です。
    void
    writeChars(char[] c, int off, int len)
    charのシーケンスをストリームの現在位置に書き込みます。
    void
    文字列を出力ストリームに書き込みます。
    void
    writeDouble(double v)
    4バイトで構成されるdouble値を出力ストリームに書き込みます。
    void
    writeDoubles(double[] d, int off, int len)
    doubleのシーケンスをストリームの現在位置に書き込みます。
    void
    writeFloat(float v)
    4バイトで構成されるfloat値を出力ストリームに書き込みます。
    void
    writeFloats(float[] f, int off, int len)
    floatのシーケンスをストリームの現在位置に書き込みます。
    void
    writeInt(int v)
    vの32ビットをストリームに書き込みます。
    void
    writeInts(int[] i, int off, int len)
    intのシーケンスをストリームの現在位置に書き込みます。
    void
    writeLong(long v)
    vの64ビットをストリームに書き込みます。
    void
    writeLongs(long[] l, int off, int len)
    longのシーケンスをストリームの現在位置に書き込みます。
    void
    writeShort(int v)
    vの下位16ビットをストリームに書き込みます。
    void
    writeShorts(short[] s, int off, int len)
    shortのシーケンスをストリームの現在位置に書き込みます。
    void
    長さ情報の2バイトを、ネットワーク・バイト順で出力ストリームに書き込みます。その後ろには、文字列s内の各文字の 修正UTF-8表現が続きます。

    インタフェースで宣言されたメソッド ImageInputStream

    close, flush, getBitOffset, getByteOrder, getFlushedPosition, getStreamPosition, isCached, isCachedFile, isCachedMemory, length, mark, read, read, read, readBit, readBits, readBoolean, readByte, readBytes, readChar, readDouble, readFloat, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readFully, readInt, readLine, readLong, readShort, readUnsignedByte, readUnsignedInt, readUnsignedShort, readUTF, reset, seek, setBitOffset, setByteOrder, skipBytes, skipBytes
    修飾子と型
    メソッド
    説明
    void
    ストリームを閉じます。
    void
    現在のストリーム位置より前の初期のストリーム位置を破棄します。
    int
    現在のビット・オフセットを0から7までの整数として返します。
    このストリームから読み込まれるデータのバイト順を、java.nio.ByteOrder列挙のインスタンスとして返します。
    long
    シークが実行されるストリーム内の一番初期の位置を返します。
    long
    ストリームの現在のバイト位置を返します。
    boolean
    逆シークを可能にするために、このImageInputStreamがデータ自体をキャッシュに格納する場合はtrueを返します。
    boolean
    このImageInputStreamが、逆シークを可能にするためにデータ自体をキャッシュに格納し、キャッシュが一時ファイルに保持される場合はtrueを返します。
    boolean
    このImageInputStreamが、逆シークを有効にするためにデータ自体をキャッシュに格納し、キャッシュがメイン・メモリーに保持される場合はtrueを返します。
    long
    既知の場合、ストリームの全長を返します。
    void
    その後のreset呼出しで返されるストリーム内の位置をマーク付けします。
    int
    ストリームから1バイトを読み込み、それを0から255までの整数として返します。
    int
    read(byte[] b)
    ストリームから最大b.lengthバイトを読み込み、bにインデックス0から格納します。
    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
    最新の不一致のmark呼出し時点の、ビット・オフセットを含む以前の位置を指すストリーム・ポインタを返します。
    void
    seek(long pos)
    現在のストリーム位置を目的の位置に設定します。
    void
    setBitOffset(int bitOffset)
    ビット・オフセットに0から7までの整数を設定します。
    void
    このストリームからの今後のデータ値の読込みのために、バイト順を設定します。
    int
    skipBytes(int n)
    指定されたバイト数だけストリーム位置を前に移動します。
    long
    skipBytes(long n)
    指定されたバイト数だけストリーム位置を前に移動します。
  • メソッドの詳細

    • write

      void write(int b) throws IOException
      ストリームの現在の位置に1バイト書き込みます。 bの上位24ビットは無視されます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。 実装側は、ImageOutputStreamImplflushBitsメソッドを使用してこれを保証できます。

      定義:
      write、インタフェースDataOutput
      パラメータ:
      b - 下位8ビットが書き込まれるint
      スロー:
      IOException - 入出力エラーが発生した場合。
    • write

      void write(byte[] b) throws IOException
      バイトのシーケンスをストリームの現在位置に書き込みます。 b.lengthが0の場合、何も書き込みません。 バイトb[0]を最初に書き込み、次にバイトb[1]を書き込む、という具合になります。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      write、インタフェースDataOutput
      パラメータ:
      b - 書き込まれるbyte配列。
      スロー:
      NullPointerException - bnullである場合。
      IOException - 入出力エラーが発生した場合。
    • write

      void write(byte[] b, int off, int len) throws IOException
      バイトのシーケンスをストリームの現在位置に書き込みます。 lenが0の場合、何も書き込みません。 バイトb[off]を最初に書き込み、次にバイトb[off+1]を書き込む、という具合になります。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。 実装側は、ImageOutputStreamImplflushBitsメソッドを使用してこれを保証できます。

      定義:
      write、インタフェースDataOutput
      パラメータ:
      b - 書き込まれるbyte配列。
      off - データの開始オフセット。
      len - 書き込むbyte数。
      スロー:
      IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、またはoff+lenb.lengthより大きい場合。
      NullPointerException - bnullである場合。
      IOException - 入出力エラーが発生した場合。
    • writeBoolean

      void writeBoolean(boolean v) throws IOException
      ストリームにboolean値を書き込みます。 vがtrueの場合は値(byte)1が書き込まれ、vがfalseの場合は値(byte)0が書き込まれます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      writeBoolean、インタフェースDataOutput
      パラメータ:
      v - 書き込まれるboolean
      スロー:
      IOException - 入出力エラーが発生した場合。
    • writeByte

      void writeByte(int v) throws IOException
      vの下位8ビットをストリームに書き込みます。 vの上位24ビットは無視されます。 これはwriteByteが、整数引数のwriteとまったく同じであることを意味します。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      writeByte、インタフェースDataOutput
      パラメータ:
      v - 書き込まれるバイト値を含むint
      スロー:
      IOException - 入出力エラーが発生した場合。
    • writeShort

      void writeShort(int v) throws IOException
      vの下位16ビットをストリームに書き込みます。 vの上位16ビットは無視されます。 ストリームでネットワーク・バイト順が使用される場合、書き込まれるバイトの順序は次のとおりです。
      (byte)((v >> 8) & 0xff)
      (byte)(v & 0xff)
      
      それ以外の場合、次のように書き込まれます。
      (byte)(v & 0xff)
      (byte)((v >> 8) & 0xff)
      

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      writeShort、インタフェースDataOutput
      パラメータ:
      v - 書き込まれるshort値を含むint
      スロー:
      IOException - 入出力エラーが発生した場合。
    • writeChar

      void writeChar(int v) throws IOException
      このメソッドはwriteShortと同義です。
      定義:
      writeChar、インタフェースDataOutput
      パラメータ:
      v - 書き込まれるchar (符号なしshort)値を含むint
      スロー:
      IOException - 入出力エラーが発生した場合。
      関連項目:
    • writeInt

      void writeInt(int v) throws IOException
      vの32ビットをストリームに書き込みます。 ストリームでネットワーク・バイト順が使用される場合、書き込まれるバイトの順序は次のとおりです。
      (byte)((v >> 24) & 0xff)
      (byte)((v >> 16) & 0xff)
      (byte)((v >> 8) & 0xff)
      (byte)(v & 0xff)
      
      それ以外の場合、次のように書き込まれます。
      (byte)(v & 0xff)
      (byte)((v >> 8) & 0xff)
      (byte)((v >> 16) & 0xff)
      (byte)((v >> 24) & 0xff)
      

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      writeInt、インタフェースDataOutput
      パラメータ:
      v - 書き込まれる値を含むint
      スロー:
      IOException - 入出力エラーが発生した場合。
    • writeLong

      void writeLong(long v) throws IOException
      vの64ビットをストリームに書き込みます。 ストリームでネットワーク・バイト順が使用される場合、書き込まれるバイトの順序は次のとおりです。
      (byte)((v >> 56) & 0xff)
      (byte)((v >> 48) & 0xff)
      (byte)((v >> 40) & 0xff)
      (byte)((v >> 32) & 0xff)
      (byte)((v >> 24) & 0xff)
      (byte)((v >> 16) & 0xff)
      (byte)((v >> 8) & 0xff)
      (byte)(v & 0xff)
      
      それ以外の場合、次のように書き込まれます。
      (byte)(v & 0xff)
      (byte)((v >> 8) & 0xff)
      (byte)((v >> 16) & 0xff)
      (byte)((v >> 24) & 0xff)
      (byte)((v >> 32) & 0xff)
      (byte)((v >> 40) & 0xff)
      (byte)((v >> 48) & 0xff)
      (byte)((v >> 56) & 0xff)
      

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      writeLong、インタフェースDataOutput
      パラメータ:
      v - 書き込まれる値を含むlong
      スロー:
      IOException - 入出力エラーが発生した場合。
    • writeFloat

      void writeFloat(float v) throws IOException
      4バイトで構成されるfloat値を出力ストリームに書き込みます。 これは、最初にこのfloat値をFloat.floatToIntBitsメソッドと同じ方法でintに変換し、その後int値をwriteIntメソッドと同じ方法で書き込むようにして行われます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      writeFloat、インタフェースDataOutput
      パラメータ:
      v - 書き込まれる値を含むfloat
      スロー:
      IOException - 入出力エラーが発生した場合。
    • writeDouble

      void writeDouble(double v) throws IOException
      4バイトで構成されるdouble値を出力ストリームに書き込みます。 これは、最初にこのdouble値をDouble.doubleToLongBitsメソッドとまったく同じ方法でlongに変換し、次にwriteLongメソッドとまったく同じ方法でlong値を書き込むかのように行われます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      writeDouble、インタフェースDataOutput
      パラメータ:
      v - 書き込まれる値を含むdouble
      スロー:
      IOException - 入出力エラーが発生した場合。
    • writeBytes

      void writeBytes(String s) throws IOException
      文字列を出力ストリームに書き込みます。 文字列sの各文字が順番に取り出され、1バイトが出力ストリームに書き込まれます。 snullの場合、NullPointerExceptionがスローされます。

      s.lengthがゼロの場合、バイトは書き込まれません。 それ以外の場合は、最初に文字s[0]が書き込まれ、次にs[1]という具合に続き、最後に書き込まれる文字はs[s.length-1]になります。 各文字については、writeByteメソッドとまったく同じ方法で、1バイト、つまり下位バイトが書き込まれます。 文字列内の各文字の上位8ビットは無視されます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      writeBytes、インタフェースDataOutput
      パラメータ:
      s - 書き込まれる値を含むString
      スロー:
      NullPointerException - snullの場合。
      IOException - 入出力エラーが発生した場合。
    • writeChars

      void writeChars(String s) throws IOException
      文字列を出力ストリームに書き込みます。 文字列sの各文字が、順番に取り出され、現在のバイト順の設定に従った順序で、2バイトが出力ストリームに書き込まれます。 ネットワーク・バイト順が使用されると高位バイトが最初に書き込まれ、そうでない場合は逆になります。 snullの場合、NullPointerExceptionがスローされます。

      s.lengthがゼロの場合、バイトは書き込まれません。 それ以外の場合は、最初に文字s[0]が書き込まれ、次にs[1]という具合に続き、最後に書き込まれる文字はs[s.length-1]になります。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      定義:
      writeChars、インタフェースDataOutput
      パラメータ:
      s - 書き込まれる値を含むString
      スロー:
      NullPointerException - snullの場合。
      IOException - 入出力エラーが発生した場合。
    • writeUTF

      void writeUTF(String s) throws IOException
      長さ情報の2バイトを、ネットワーク・バイト順で出力ストリームに書き込みます。その後ろには、文字列s内の各文字の 修正UTF-8表現が続きます。 snullの場合、NullPointerExceptionがスローされます。 文字列s内の各文字は、文字の値に基づいて、1、2、または3バイトのグループに変換されます。

      文字c\u0001 - \u007fの範囲にある場合、次のような1バイトで表現されます。

      (byte)c
      

      文字c\u0000の場合や、\u0080 - \u07ffの範囲にある場合には、次の順序で書き込まれる2バイトによって表されます。

      (byte)(0xc0 | (0x1f & (c >> 6)))
      (byte)(0x80 | (0x3f & c))
      

      文字c\u0800 - uffffの範囲にある場合、次の順序で書き込まれる3バイトによって表されます。

      (byte)(0xe0 | (0x0f & (c >> 12)))
      (byte)(0x80 | (0x3f & (c >> 6)))
      (byte)(0x80 | (0x3f & c))
      

      まず、sのすべての文字を表すのに必要な総バイト数が計算されます。 この数値が65535を超える場合は、UTFDataFormatExceptionがスローされます。 それ以外の場合は、この長さがwriteShortメソッドとまったく同じ方法で出力ストリームに書き込まれます。次に、文字列s内の各文字の1、2、または3バイト表現が書き込まれます。

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

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

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

      定義:
      writeUTF、インタフェースDataOutput
      パラメータ:
      s - 書き込まれる値を含むString
      スロー:
      NullPointerException - snullの場合。
      UTFDataFormatException - sの修正UTF-8表現に65536を超えるバイトが必要な場合。
      IOException - 入出力エラーが発生した場合。
    • writeShorts

      void writeShorts(short[] s, int off, int len) throws IOException
      shortのシーケンスをストリームの現在位置に書き込みます。 lenが0の場合、何も書き込みません。 最初にshort s[off]、次にshort s[off+1]、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      パラメータ:
      s - 書き込まれるshort配列。
      off - データの開始オフセット。
      len - 書き込むshort数。
      スロー:
      IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、またはoff+lens.lengthより大きい場合。
      NullPointerException - snullの場合。
      IOException - 入出力エラーが発生した場合。
    • writeChars

      void writeChars(char[] c, int off, int len) throws IOException
      charのシーケンスをストリームの現在位置に書き込みます。 lenが0の場合、何も書き込みません。 最初にchar c[off]、次にchar c[off+1]、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      パラメータ:
      c - 書き込まれるchar配列。
      off - データの開始オフセット。
      len - 書き込むchar数。
      スロー:
      IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、またはoff+lenc.lengthより大きい場合。
      NullPointerException - cnullの場合。
      IOException - 入出力エラーが発生した場合。
    • writeInts

      void writeInts(int[] i, int off, int len) throws IOException
      intのシーケンスをストリームの現在位置に書き込みます。 lenが0の場合、何も書き込みません。 最初にint i[off]、次にint i[off+1]、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      パラメータ:
      i - 書き込まれるint配列。
      off - データの開始オフセット。
      len - 書き込むint数。
      スロー:
      IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、またはoff+leni.lengthより大きい場合。
      NullPointerException - inullの場合。
      IOException - 入出力エラーが発生した場合。
    • writeLongs

      void writeLongs(long[] l, int off, int len) throws IOException
      longのシーケンスをストリームの現在位置に書き込みます。 lenが0の場合、何も書き込みません。 最初にlong l[off]、次にlong l[off+1]、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      パラメータ:
      l - 書き込まれるlong配列。
      off - データの開始オフセット。
      len - 書き込むlong数。
      スロー:
      IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、またはoff+lenl.lengthより大きい場合。
      NullPointerException - lnullの場合。
      IOException - 入出力エラーが発生した場合。
    • writeFloats

      void writeFloats(float[] f, int off, int len) throws IOException
      floatのシーケンスをストリームの現在位置に書き込みます。 lenが0の場合、何も書き込みません。 最初にfloat f[off]、次にfloat f[off+1]、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      パラメータ:
      f - 書き込まれるfloat配列。
      off - データの開始オフセット。
      len - 書き込むfloat数。
      スロー:
      IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、またはoff+lenf.lengthより大きい場合。
      NullPointerException - fnullの場合。
      IOException - 入出力エラーが発生した場合。
    • writeDoubles

      void writeDoubles(double[] d, int off, int len) throws IOException
      doubleのシーケンスをストリームの現在位置に書き込みます。 lenが0の場合、何も書き込みません。 最初にdouble d[off]、次にdouble d[off+1]、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。

      ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。

      パラメータ:
      d - 書き込まれるdoubles配列。
      off - データの開始オフセット。
      len - 書き込むdouble数。
      スロー:
      IndexOutOfBoundsException - offが負の値の場合、lenが負の値の場合、またはoff+lend.lengthより大きい場合。
      NullPointerException - dnullの場合。
      IOException - 入出力エラーが発生した場合。
    • writeBit

      void writeBit(int bit) throws IOException
      引数の最下位ビットで指定された1ビットを、ストリームの現在のバイト位置の現在のビット・オフセットに書き込みます。 引数の上位31ビットは無視されます。 指定されたビットにより、その位置にあった以前のビットは置換されます。 ビット・オフセットは1ずつ増加し、8を法として減分します。

      特定のバイトの任意のビットが、バイトが出力先にフラッシュされる時点で設定されていなかった場合、これらのビットは自動的に0に設定されます。

      パラメータ:
      bit - その最下位ビットがストリームに書き込まれるint
      スロー:
      IOException - 入出力エラーが発生した場合。
    • writeBits

      void writeBits(long bits, int numBits) throws IOException
      bits引数の下位numBitsビットのビット・シーケンスを左から右に、ストリームの現在のバイト位置の現在のビット・オフセットに書き込みます。 引数の上位64 - numBitsビットは無視されます。 ビット・オフセットはnumBitsだけ増加し、8を法として減分します。 ビット・オフセット0は常にバイトの最高位ビットを示し、ビットのバイトは検出された順番に書き込まれます。 したがってビットの書込みは、事実上常にネットワーク・バイト順です。 実際のストリーム・バイト順の設定は無視されます。

      ビット・データは、flushBeforeが呼び出されるまでメモリーに無限に蓄積されます。 呼び出された時点で、フラッシュ位置より前のビット・データがすべて書き込まれます。

      特定のバイトの任意のビットが、バイトが出力先にフラッシュされる時点で設定されていなかった場合、これらのビットは自動的に0に設定されます。

      パラメータ:
      bits - ビット位置numBits - 1から最下位ビットまでが書き込まれるビットを含むlong
      numBits - 0から64までのint
      スロー:
      IllegalArgumentException - numBitsが0から64の範囲内にない場合。
      IOException - 入出力エラーが発生した場合。
    • flushBefore

      void flushBefore(long pos) throws IOException
      指定された位置より前のデータをすべて、OutputStreamFileなどの基本となる出力先にフラッシュします。 ストリームのフラッシュ部分にシークするとIndexOutOfBoundsExceptionがスローされます。
      定義:
      flushBefore、インタフェースImageInputStream
      パラメータ:
      pos - 出力先にフラッシュされるストリーム接頭辞の長さを含むlong
      スロー:
      IndexOutOfBoundsException - posがストリームのフラッシュ部分にあるか、または現在のストリーム位置を通過した場合。
      IOException - 入出力エラーが発生した場合。