- すべての実装されたインタフェース:
Closeable
,DataInput
,DataOutput
,AutoCloseable
,ImageInputStream
,ImageOutputStream
ImageOutputStream
インタフェースを実装する抽象クラスです。 このクラスの目的は、サブクラスで実装する必要のあるメソッドの数を減らすことです。 -
フィールドのサマリー
クラス javax.imageio.stream.ImageInputStreamImplで宣言されたフィールド
bitOffset, byteOrder, flushedPos, streamPos
-
コンストラクタのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明protected final void
ビット・オフセットがゼロでない場合、現在のバイトの残りのビットを強制的に0にして、ストリーム位置を1だけ増加します。void
write
(byte[] b) バイトのシーケンスをストリームの現在位置に書き込みます。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
writeBytes
(String s) 文字列を出力ストリームに書き込みます。void
writeChar
(int v) このメソッドはwriteShort
と同義です。void
writeChars
(char[] c, int off, int len) charのシーケンスをストリームの現在位置に書き込みます。void
writeChars
(String s) 文字列を出力ストリームに書き込みます。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表現が続きます。クラス javax.imageio.stream.ImageInputStreamImplで宣言されたメソッド
checkClosed, close, finalize, flush, flushBefore, 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
クラス java.lang.Objectで宣言されたメソッド
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
インタフェース javax.imageio.stream.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
インタフェース javax.imageio.stream.ImageOutputStreamで宣言されたメソッド
flushBefore, write, write
-
コンストラクタの詳細
-
ImageOutputStreamImpl
public ImageOutputStreamImpl()ImageOutputStreamImpl
を構築します。
-
-
メソッドの詳細
-
write
public void write(byte[] b) throws IOException インタフェースからコピーされた説明:ImageOutputStream
バイトのシーケンスをストリームの現在位置に書き込みます。b.length
が0の場合、何も書き込みません。 バイトb[0]
を最初に書き込み、次にバイトb[1]
を書き込む、という具合になります。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
write
、インタフェースDataOutput
- 定義:
write
、インタフェースImageOutputStream
- パラメータ:
b
- 書き込まれるbyte
配列。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeBoolean
public void writeBoolean(boolean v) throws IOException インタフェースからコピーされた説明:ImageOutputStream
ストリームにboolean
値を書き込みます。v
がtrueの場合は値(byte)1
が書き込まれ、v
がfalseの場合は値(byte)0
が書き込まれます。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeBoolean
、インタフェースDataOutput
- 定義:
writeBoolean
、インタフェースImageOutputStream
- パラメータ:
v
- 書き込まれるboolean
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeByte
public void writeByte(int v) throws IOException インタフェースからコピーされた説明:ImageOutputStream
v
の下位8ビットをストリームに書き込みます。v
の上位24ビットは無視されます。 これはwriteByte
が、整数引数のwrite
とまったく同じであることを意味します。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeByte
、インタフェースDataOutput
- 定義:
writeByte
、インタフェースImageOutputStream
- パラメータ:
v
- 書き込まれるバイト値を含むint
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeShort
public void writeShort(int v) throws IOException インタフェースからコピーされた説明:ImageOutputStream
v
の下位16ビットをストリームに書き込みます。v
の上位16ビットは無視されます。 ストリームでネットワーク・バイト順が使用される場合、書き込まれるバイトの順序は次のとおりです。(byte)((v >> 8) & 0xff) (byte)(v & 0xff)
それ以外の場合、次のように書き込まれます。(byte)(v & 0xff) (byte)((v >> 8) & 0xff)
ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeShort
、インタフェースDataOutput
- 定義:
writeShort
、インタフェースImageOutputStream
- パラメータ:
v
- 書き込まれるshort値を含むint
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeChar
public void writeChar(int v) throws IOException インタフェースからコピーされた説明:ImageOutputStream
このメソッドはwriteShort
と同義です。- 定義:
writeChar
、インタフェースDataOutput
- 定義:
writeChar
、インタフェースImageOutputStream
- パラメータ:
v
- 書き込まれるchar (符号なしshort)値を含むint
。- 例外:
IOException
- 入出力エラーが発生した場合。- 関連項目:
-
writeInt
public void writeInt(int v) throws IOException インタフェースからコピーされた説明:ImageOutputStream
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
- 定義:
writeInt
、インタフェースImageOutputStream
- パラメータ:
v
- 書き込まれる値を含むint
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeLong
public void writeLong(long v) throws IOException インタフェースからコピーされた説明:ImageOutputStream
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
- 定義:
writeLong
、インタフェースImageOutputStream
- パラメータ:
v
- 書き込まれる値を含むlong
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeFloat
public void writeFloat(float v) throws IOException インタフェースからコピーされた説明:ImageOutputStream
4バイトで構成されるfloat
値を出力ストリームに書き込みます。 これは、最初にこのfloat
値をFloat.floatToIntBits
メソッドと同じ方法でint
に変換し、その後int値をwriteInt
メソッドと同じ方法で書き込むようにして行われます。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeFloat
、インタフェースDataOutput
- 定義:
writeFloat
、インタフェースImageOutputStream
- パラメータ:
v
- 書き込まれる値を含むfloat
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeDouble
public void writeDouble(double v) throws IOException インタフェースからコピーされた説明:ImageOutputStream
4バイトで構成されるdouble
値を出力ストリームに書き込みます。 これは、Double.doubleToLongBits
メソッドの方法とまったく同じ方法で、このdouble
値を最初にlong
に変換し、writeLong
メソッドとまったく同じ方法でlong値を書き込むかのように行います。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeDouble
、インタフェースDataOutput
- 定義:
writeDouble
、インタフェースImageOutputStream
- パラメータ:
v
- 書き込まれる値を含むdouble
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeBytes
public void writeBytes(String s) throws IOException インタフェースからコピーされた説明:ImageOutputStream
文字列を出力ストリームに書き込みます。 文字列s
の各文字が順番に取り出され、1バイトが出力ストリームに書き込まれます。s
がnull
の場合、NullPointerException
がスローされます。s.length
がゼロの場合、バイトは書き込まれません。 それ以外の場合は、最初に文字s[0]
が書き込まれ、次にs[1]
という具合に続き、最後に書き込まれる文字はs[s.length-1]
になります。 各文字については、writeByte
メソッドとまったく同じ方法で、1バイト、つまり下位バイトが書き込まれます。 文字列内の各文字の上位8ビットは無視されます。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeBytes
、インタフェースDataOutput
- 定義:
writeBytes
、インタフェースImageOutputStream
- パラメータ:
s
- 書き込まれる値を含むString
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeChars
public void writeChars(String s) throws IOException インタフェースからコピーされた説明:ImageOutputStream
文字列を出力ストリームに書き込みます。 文字列s
の各文字が、順番に取り出され、現在のバイト順の設定に従った順序で、2バイトが出力ストリームに書き込まれます。 ネットワーク・バイト順が使用されると高位バイトが最初に書き込まれ、そうでない場合は逆になります。s
がnull
の場合、NullPointerException
がスローされます。s.length
がゼロの場合、バイトは書き込まれません。 それ以外の場合は、最初に文字s[0]
が書き込まれ、次にs[1]
という具合に続き、最後に書き込まれる文字はs[s.length-1]
になります。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeChars
、インタフェースDataOutput
- 定義:
writeChars
、インタフェースImageOutputStream
- パラメータ:
s
- 書き込まれる値を含むString
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeUTF
public void writeUTF(String s) throws IOException インタフェースからコピーされた説明:ImageOutputStream
長さ情報の2バイトを、ネットワーク・バイト順で出力ストリームに書き込みます。その後ろには、文字列s
内の各文字の 修正UTF-8表現が続きます。s
がnull
の場合、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
- 定義:
writeUTF
、インタフェースImageOutputStream
- パラメータ:
s
- 書き込まれる値を含むString
。- 例外:
UTFDataFormatException
-s
の修正UTF-8表現に65536を超えるバイトが必要な場合。IOException
- 入出力エラーが発生した場合。
-
writeShorts
public void writeShorts(short[] s, int off, int len) throws IOException インタフェースからコピーされた説明:ImageOutputStream
shortのシーケンスをストリームの現在位置に書き込みます。len
が0の場合、何も書き込みません。 最初にshorts[off]
、次にshorts[off+1]
、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeShorts
、インタフェースImageOutputStream
- パラメータ:
s
- 書き込まれるshort
配列。off
- データの開始オフセット。len
- 書き込むshort
数。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeChars
public void writeChars(char[] c, int off, int len) throws IOException インタフェースからコピーされた説明:ImageOutputStream
charのシーケンスをストリームの現在位置に書き込みます。len
が0の場合、何も書き込みません。 最初にcharc[off]
、次にcharc[off+1]
、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeChars
、インタフェースImageOutputStream
- パラメータ:
c
- 書き込まれるchar
配列。off
- データの開始オフセット。len
- 書き込むchar
数。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeInts
public void writeInts(int[] i, int off, int len) throws IOException インタフェースからコピーされた説明:ImageOutputStream
intのシーケンスをストリームの現在位置に書き込みます。len
が0の場合、何も書き込みません。 最初にinti[off]
、次にinti[off+1]
、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeInts
、インタフェースImageOutputStream
- パラメータ:
i
- 書き込まれるint
配列。off
- データの開始オフセット。len
- 書き込むint
数。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeLongs
public void writeLongs(long[] l, int off, int len) throws IOException インタフェースからコピーされた説明:ImageOutputStream
longのシーケンスをストリームの現在位置に書き込みます。len
が0の場合、何も書き込みません。 最初にlongl[off]
、次にlongl[off+1]
、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeLongs
、インタフェースImageOutputStream
- パラメータ:
l
- 書き込まれるlong
配列。off
- データの開始オフセット。len
- 書き込むlong
数。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeFloats
public void writeFloats(float[] f, int off, int len) throws IOException インタフェースからコピーされた説明:ImageOutputStream
floatのシーケンスをストリームの現在位置に書き込みます。len
が0の場合、何も書き込みません。 最初にfloatf[off]
、次にfloatf[off+1]
、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeFloats
、インタフェースImageOutputStream
- パラメータ:
f
- 書き込まれるfloat
配列。off
- データの開始オフセット。len
- 書き込むfloat
数。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeDoubles
public void writeDoubles(double[] d, int off, int len) throws IOException インタフェースからコピーされた説明:ImageOutputStream
doubleのシーケンスをストリームの現在位置に書き込みます。len
が0の場合、何も書き込みません。 最初にdoubled[off]
、次にdoubled[off+1]
、という順序で書込みが行われます。 ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。ストリーム内のビット・オフセットがゼロでない場合、現在のバイトの残りは0でパディングされ、最初に書き込まれます。 書込み後は、ビット・オフセットは0です。
- 定義:
writeDoubles
、インタフェースImageOutputStream
- パラメータ:
d
- 書き込まれるdoubles
配列。off
- データの開始オフセット。len
- 書き込むdouble
数。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeBit
public void writeBit(int bit) throws IOException インタフェースからコピーされた説明:ImageOutputStream
引数の最下位ビットで指定された1ビットを、ストリームの現在のバイト位置の現在のビット・オフセットに書き込みます。 引数の上位31ビットは無視されます。 指定されたビットにより、その位置にあった以前のビットは置換されます。 ビット・オフセットは1ずつ増加し、8を法として減分します。特定のバイトの任意のビットが、バイトが出力先にフラッシュされる時点で設定されていなかった場合、これらのビットは自動的に0に設定されます。
- 定義:
writeBit
、インタフェースImageOutputStream
- パラメータ:
bit
- その最下位ビットがストリームに書き込まれるint
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
writeBits
public void writeBits(long bits, int numBits) throws IOException インタフェースからコピーされた説明:ImageOutputStream
bits
引数の下位numBits
ビットのビット・シーケンスを左から右に、ストリームの現在のバイト位置の現在のビット・オフセットに書き込みます。 引数の上位64 - numBits
ビットは無視されます。 ビット・オフセットはnumBits
だけ増加し、8を法として減分します。 ビット・オフセット0は常にバイトの最高位ビットを示し、ビットのバイトは検出された順番に書き込まれます。 したがってビットの書込みは、事実上常にネットワーク・バイト順です。 実際のストリーム・バイト順の設定は無視されます。ビット・データは、
flushBefore
が呼び出されるまでメモリーに無限に蓄積されます。 呼び出された時点で、フラッシュ位置より前のビット・データがすべて書き込まれます。特定のバイトの任意のビットが、バイトが出力先にフラッシュされる時点で設定されていなかった場合、これらのビットは自動的に0に設定されます。
- 定義:
writeBits
、インタフェースImageOutputStream
- パラメータ:
bits
- ビット位置numBits - 1
から最下位ビットまでが書き込まれるビットを含むlong
。numBits
- 0から64までのint
。- 例外:
IOException
- 入出力エラーが発生した場合。
-
flushBits
protected final void flushBits() throws IOExceptionビット・オフセットがゼロでない場合、現在のバイトの残りのビットを強制的に0にして、ストリーム位置を1だけ増加します。 サブクラスは、write(int)
およびwrite(byte[], int, int)
メソッドの先頭でこのメソッドを呼び出す必要があります。- 例外:
IOException
- 入出力エラーが発生した場合。
-