public abstract class ImageOutputStreamImpl extends ImageInputStreamImpl implements ImageOutputStream
ImageOutputStream インタフェースを実装する abstract クラスです。このクラスの目的は、サブクラスで実装する必要のあるメソッドの数を減らすことです。bitOffset, byteOrder, flushedPos, streamPos| コンストラクタと説明 |
|---|
ImageOutputStreamImpl()
ImageOutputStreamImpl を構築します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
protected void |
flushBits()
ビットオフセットがゼロでない場合、現在のバイトの残りのビットを強制的に 0 にして、ストリーム位置を 1 だけ増加します。
|
void |
write(byte[] b)
バイトのシーケンスをストリームの現在位置に書き込みます。
|
abstract void |
write(byte[] b, int off, int len)
バイトのシーケンスをストリームの現在位置に書き込みます。
|
abstract 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 |
writeBytes(String s)
文字列を出力ストリームに書き込みます。
|
void |
writeChar(int v)
このメソッドは
と同義です。 |
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 |
writeUTF(String s)
長さ情報の 2 バイトを、ネットワークバイト順で出力ストリームに書き込みます。その後ろには、文字列
s 内の各文字の修正 UTF-8 表現が続きます。 |
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, skipBytesclone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitflushBeforeclose, 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, skipBytespublic abstract void write(int b)
throws IOException
ImageOutputStreamb の上位 24 ビットは無視されます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。実装側は、 の ImageOutputStreamImpl メソッドを使用してこれを保証できます。flushBits
write、インタフェース: DataOutputwrite、インタフェース: ImageOutputStreamb - 下位 8 ビットが書き込まれる int。IOException - 入出力エラーが発生した場合。public void write(byte[] b)
throws IOException
ImageOutputStreamb.length が 0 の場合、何も書き込みません。バイト b[0] を最初に書き込み、次にバイト b[1] を書き込む、という具合になります。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
write、インタフェース: DataOutputwrite、インタフェース: ImageOutputStreamb - 書き込まれる byte 配列。IOException - 入出力エラーが発生した場合。public abstract void write(byte[] b,
int off,
int len)
throws IOException
ImageOutputStreamlen が 0 の場合、何も書き込みません。バイト b[off] を最初に書き込み、次にバイト b[off + 1] を書き込む、という具合になります。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。実装側は、 の ImageOutputStreamImpl メソッドを使用してこれを保証できます。flushBits
write、インタフェース: DataOutputwrite、インタフェース: ImageOutputStreamb - 書き込まれる byte 配列。off - データの開始オフセット。len - 書き込む byte 数。IOException - 入出力エラーが発生した場合。public void writeBoolean(boolean v)
throws IOException
ImageOutputStreamboolean 値を書き込みます。v が true の場合は値 (byte)1 が書き込まれ、v が false の場合は値 (byte)0 が書き込まれます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeBoolean、インタフェース: DataOutputwriteBoolean、インタフェース: ImageOutputStreamv - 書き込まれる boolean。IOException - 入出力エラーが発生した場合。public void writeByte(int v)
throws IOException
ImageOutputStreamv の下位 8 ビットをストリームに書き込みます。v の上位 24 ビットは無視されます。これは writeByte が、整数引数の write とまったく同じであることを意味します。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeByte、インタフェース: DataOutputwriteByte、インタフェース: ImageOutputStreamv - 書き込まれるバイト値を含む int。IOException - 入出力エラーが発生した場合。public void writeShort(int v)
throws IOException
ImageOutputStreamv の下位 16 ビットをストリームに書き込みます。v の上位 16 ビットは無視されます。ストリームでネットワークバイト順が使用される場合、書き込まれるバイトの順序は次のとおりです。
(byte)((v >> 8) & 0xff) (byte)(v & 0xff)それ以外の場合、次のように書き込まれます。
(byte)(v & 0xff) (byte)((v >> 8) & 0xff)
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeShort、インタフェース: DataOutputwriteShort、インタフェース: ImageOutputStreamv - 書き込まれる short 値を含む int。IOException - 入出力エラーが発生した場合。public void writeChar(int v)
throws IOException
ImageOutputStreamwriteShort と同義です。writeChar、インタフェース: DataOutputwriteChar、インタフェース: ImageOutputStreamv - 書き込まれる char (符号なし short) 値を含む int。IOException - 入出力エラーが発生した場合。ImageOutputStream.writeShort(int)public void writeInt(int v)
throws IOException
ImageOutputStreamv の 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、インタフェース: DataOutputwriteInt、インタフェース: ImageOutputStreamv - 書き込まれる値を含む int。IOException - 入出力エラーが発生した場合。public void writeLong(long v)
throws IOException
ImageOutputStreamv の 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、インタフェース: DataOutputwriteLong、インタフェース: ImageOutputStreamv - 書き込まれる値を含む long。IOException - 入出力エラーが発生した場合。public void writeFloat(float v)
throws IOException
ImageOutputStreamfloat 値を出力ストリームに書き込みます。これは、最初にこの float 値を Float.floatToIntBits メソッドと同じ方法で int に変換し、その後 int 値を writeInt メソッドと同じ方法で書き込むようにして行われます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeFloat、インタフェース: DataOutputwriteFloat、インタフェース: ImageOutputStreamv - 書き込まれる値を含む float。IOException - 入出力エラーが発生した場合。public void writeDouble(double v)
throws IOException
ImageOutputStreamdouble 値を出力ストリームに書き込みます。これは、最初にこの double 値を Double.doubleToLongBits メソッドと同じ方法で long に変換し、次に long 値を writeLong メソッドと同じ方法で書き込むようにして行われます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeDouble、インタフェース: DataOutputwriteDouble、インタフェース: ImageOutputStreamv - 書き込まれる値を含む double。IOException - 入出力エラーが発生した場合。public void writeBytes(String s) throws IOException
ImageOutputStreams の各文字が順番に取り出され、1 バイトが出力ストリームに書き込まれます。s が null の場合、NullPointerException がスローされます。
s.length がゼロの場合、バイトは書き込まれません。それ以外の場合は、最初に文字 s[0] が書き込まれ、次に s[1] という具合に続き、最後に書き込まれる文字は s[s.length-1] になります。各文字については、writeByte メソッドとまったく同じ方法で、1 バイト、つまり下位バイトが書き込まれます。文字列内の各文字の上位 8 ビットは無視されます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeBytes、インタフェース: DataOutputwriteBytes、インタフェース: ImageOutputStreams - 書き込まれる値を含む String。IOException - 入出力エラーが発生した場合。public void writeChars(String s) throws IOException
ImageOutputStreams の各文字が、順番に取り出され、現在のバイト順の設定に従った順序で、2 バイトが出力ストリームに書き込まれます。ネットワークバイト順が使用されると高位バイトが最初に書き込まれ、そうでない場合は逆になります。s が null の場合、NullPointerException がスローされます。
s.length がゼロの場合、バイトは書き込まれません。それ以外の場合は、最初に文字 s[0] が書き込まれ、次に s[1] という具合に続き、最後に書き込まれる文字は s[s.length-1] になります。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeChars、インタフェース: DataOutputwriteChars、インタフェース: ImageOutputStreams - 書き込まれる値を含む String。IOException - 入出力エラーが発生した場合。public void writeUTF(String s) throws IOException
ImageOutputStreams 内の各文字の修正 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、インタフェース: DataOutputwriteUTF、インタフェース: ImageOutputStreams - 書き込まれる値を含む String。IOException - 入出力エラーが発生した場合。public void writeShorts(short[] s,
int off,
int len)
throws IOException
ImageOutputStreamlen が 0 の場合、何も書き込みません。最初に short s[off]、次に short s[off + 1]、という順序で書き込みが行われます。ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeShorts、インタフェース: ImageOutputStreams - 書き込まれる short 配列。off - データの開始オフセット。len - 書き込む short 数。IOException - 入出力エラーが発生した場合。public void writeChars(char[] c,
int off,
int len)
throws IOException
ImageOutputStreamlen が 0 の場合、何も書き込みません。最初に char c[off]、次に char c[off + 1]、という順序で書き込みが行われます。ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeChars、インタフェース: ImageOutputStreamc - 書き込まれる char 配列。off - データの開始オフセット。len - 書き込む char 数。IOException - 入出力エラーが発生した場合。public void writeInts(int[] i,
int off,
int len)
throws IOException
ImageOutputStreamlen が 0 の場合、何も書き込みません。最初に int i[off]、次に int i[off + 1]、という順序で書き込みが行われます。ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeInts、インタフェース: ImageOutputStreami - 書き込まれる int 配列。off - データの開始オフセット。len - 書き込む int 数。IOException - 入出力エラーが発生した場合。public void writeLongs(long[] l,
int off,
int len)
throws IOException
ImageOutputStreamlen が 0 の場合、何も書き込みません。最初に long l[off]、次に long l[off + 1]、という順序で書き込みが行われます。ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeLongs、インタフェース: ImageOutputStreaml - 書き込まれる long 配列。off - データの開始オフセット。len - 書き込む long 数。IOException - 入出力エラーが発生した場合。public void writeFloats(float[] f,
int off,
int len)
throws IOException
ImageOutputStreamlen が 0 の場合、何も書き込みません。最初に float f[off]、次に float f[off + 1]、という順序で書き込みが行われます。ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeFloats、インタフェース: ImageOutputStreamf - 書き込まれる float 配列。off - データの開始オフセット。len - 書き込む float 数。IOException - 入出力エラーが発生した場合。public void writeDoubles(double[] d,
int off,
int len)
throws IOException
ImageOutputStreamlen が 0 の場合、何も書き込みません。最初に double d[off]、次に double d[off + 1]、という順序で書き込みが行われます。ストリームのバイト順を使用して、個々のバイトを書き込む順番が決定されます。
ストリーム内のビットオフセットがゼロでない場合、現在のバイトの残りは 0 でパディングされ、最初に書き込まれます。書き込み後は、ビットオフセットは 0 です。
writeDoubles、インタフェース: ImageOutputStreamd - 書き込まれる doubles 配列。off - データの開始オフセット。len - 書き込む double 数。IOException - 入出力エラーが発生した場合。public void writeBit(int bit)
throws IOException
ImageOutputStream特定のバイトの任意のビットが、バイトが出力先にフラッシュされる時点で設定されていなかった場合、これらのビットは自動的に 0 に設定されます。
writeBit、インタフェース: ImageOutputStreambit - その最下位ビットがストリームに書き込まれる int。IOException - 入出力エラーが発生した場合。public void writeBits(long bits,
int numBits)
throws IOException
ImageOutputStreambits 引数の下位 numBits ビットのビットシーケンスを左から右に、ストリームの現在のバイト位置の現在のビットオフセットに書き込みます。引数の上位 64 - numBits ビットは無視されます。ビットオフセットは numBits だけ増加し、8 を法として減分します。ビットオフセット 0 は常にバイトの最高位ビットを示し、ビットのバイトは検出された順番に書き込まれます。したがってビットの書き込みは、事実上常にネットワークバイト順です。実際のストリームバイト順の設定は無視されます。
ビットデータは、flushBefore が呼び出されるまでメモリーに無限に蓄積されます。呼び出された時点で、フラッシュ位置より前のビットデータがすべて書き込まれます。
特定のバイトの任意のビットが、バイトが出力先にフラッシュされる時点で設定されていなかった場合、これらのビットは自動的に 0 に設定されます。
writeBits、インタフェース: ImageOutputStreambits - ビット位置 numBits - 1 から最下位ビットまでが書き込まれるビットを含む long。numBits - 0 から 64 までの int。IOException - 入出力エラーが発生した場合。protected final void flushBits()
throws IOException
write(int) および write(byte[], int, int) メソッドの先頭でこのメソッドを呼び出す必要があります。IOException - 入出力エラーが発生した場合。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.