|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.imageio.stream.ImageInputStreamImpl
public abstract class ImageInputStreamImpl
ImageInputStream インタフェースを実装する abstract クラスです。このクラスの目的は、サブクラスで実装する必要のあるメソッドの数を減らすことです。
特に、このクラスはバイト順の解釈、バッファリング、マーク付けとリセット、破棄、クローズ、および廃棄の大半またはすべてを処理します。
| フィールドの概要 | |
|---|---|
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()
ガベージコレクションの前にこのオブジェクトをファイナライズします。 |
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 または 1 の int として返します。 |
long |
readBits(int numBits)
ストリームからビット列を読み込み、 long として返します。 |
boolean |
readBoolean()
ストリームから 1 バイトを読み込み、0 でない場合は true の boolean 値を返し、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 でマスクします。 |
int |
readUnsignedShort()
ストリームから 2 バイトを読み込んで、現在のバイト順に従って概念上それらを連結し、結果の値を int に変換して、符号拡張ビットを取り除くために 0xffff でマスクします。 |
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) を呼び出して、現在のストリーム位置を前進させます。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
|---|
protected ByteOrder byteOrder
java.nio.ByteOrder のインスタンスで表されるストリームのバイト順で、ByteOrder.BIG_ENDIAN はネットワークバイト順、ByteOrder.LITTLE_ENDIAN は逆順を示します。デフォルトでは、値は ByteOrder.BIG_ENDIAN です。
protected long streamPos
protected int bitOffset
protected long flushedPos
flushedPos は常に 0 以上になります。
| コンストラクタの詳細 |
|---|
public ImageInputStreamImpl()
ImageInputStreamImpl を構築します。
| メソッドの詳細 |
|---|
protected final void checkClosed()
throws IOException
IOException をスローします。サブクラスは、ストリームが開いていることが必要などのメソッドからも、このメソッドを呼び出すことができます。
IOException - ストリームが閉じられている場合public void setByteOrder(ByteOrder byteOrder)
ImageInputStream の記述: 列挙クラス java.nio.ByteOrder を使用してバイト順を指定します。値 ByteOrder.BIG_ENDIAN では、高位のバイトが先頭となる、いわゆるビッグエンディアン (ネットワークバイト順) が指定されます。Motorola と Sparc プロセッサはデータをこの形式で格納します。一方 Intel プロセッサは、データを逆順の ByteOrder.LITTLE_ENDIAN で格納します。
バイト順は、readBits メソッドから返される結果 (ImageOutputStream.writeBits により書き込まれる値) には影響を与えません。
ImageInputStream 内の setByteOrderbyteOrder - ByteOrder.BIG_ENDIAN
または java.nio.ByteOrder.LITTLE_ENDIAN のいずれか
(今後の読み込みでネットワークバイト順またはその逆順のどちらを使用するかを
示す)ByteOrder,
ImageInputStream.getByteOrder(),
ImageInputStream.readBits(int)public ByteOrder getByteOrder()
ImageInputStream の記述:java.nio.ByteOrder 列挙のインスタンスとして返します。
ImageInputStream 内の getByteOrderByteOrder.BIG_ENDIAN
または ByteOrder.LITTLE_ENDIAN のいずれか
(使用されるバイト順を示す)ByteOrder,
ImageInputStream.setByteOrder(java.nio.ByteOrder)
public abstract int read()
throws IOException
int として返します。EOF に達すると -1 を返します。
サブクラスでこのメソッドを実装する必要があります。サブクラス実装で終了する前にストリーム位置を更新します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットする必要があります。
ImageInputStream 内の read-1
IOException - ストリームが閉じられている場合
public int read(byte[] b)
throws IOException
read(b, 0, b.length) を呼び出す簡易メソッドです。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readb - 書き込まれるバイト配列
-1
NullPointerException - b が null の場合
IOException - 入出力エラーが発生した場合
public abstract int read(byte[] b,
int off,
int len)
throws IOException
len バイトまで読み込み、b にインデックス off から格納します。読み込んだバイト数を返します。ストリームの終りに達したためにバイトを読み込めない場合は、-1 を返します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットする必要があります。
サブクラスでこのメソッドを実装する必要があります。サブクラス実装で終了する前にストリーム位置を更新します。
ImageInputStream 内の readb - 書き込まれるバイト配列off - 書き込み先の b 内の開始位置len - 読み込む最大バイト数
-1
IndexOutOfBoundsException - off が負、len が負、または off + len が b.length より大きい場合
NullPointerException - b が null の場合
IOException - 入出力エラーが発生した場合
public void readBytes(IIOByteBuffer buf,
int len)
throws IOException
ImageInputStream の記述:len バイトまでを読み込み、指定された IIOByteBuffer を変更してデータを検出可能なバイト配列、オフセット、および長さを示します。呼び出し側で、IIOByteBuffer で検出されたデータを変更してはいけません。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readBytesbuf - 変更される IIOByteBuffer オブジェクトlen - byte の最大読み込み数
IOException - 入出力エラーが発生した場合
public boolean readBoolean()
throws IOException
ImageInputStream の記述:true の boolean 値を返し、0 の場合は false を返します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readBooleanImageInputStream 内の readBooleanEOFException - ストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public byte readByte()
throws IOException
ImageInputStream の記述:byte 値として返します。0x00 から 0x7f までのバイト値は 0 から 127 までの整数を表します。0x80 から 0xff までの値は -128 から -1 までの負の値を表します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readByteImageInputStream 内の readByteEOFException - ストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public int readUnsignedByte()
throws IOException
ImageInputStream の記述:0xff でマスクして、byte 値として返します。
したがって、0x00 から 0x7f までのバイト値は 0 から 127 までの整数値として単純に返されます。通常は負の byte 値を表す 0x80 から 0xff までの値は、128 から 255 までの正の整数に対応付けされます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readUnsignedByteImageInputStream 内の readUnsignedByteEOFException - ストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public short readShort()
throws IOException
ImageInputStream の記述:short 値として返します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readShortImageInputStream 内の readShortEOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public int readUnsignedShort()
throws IOException
ImageInputStream の記述:int に変換して、符号拡張ビットを取り除くために 0xffff でマスクします。その結果を符号なし int 値として返します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readUnsignedShortImageInputStream 内の readUnsignedShortEOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public char readChar()
throws IOException
ImageInputStream の記述:readUnsignedShort と同等、ただし結果は char データ型を使用して返されます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readCharImageInputStream 内の readCharEOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.readUnsignedShort()
public int readInt()
throws IOException
ImageInputStream の記述:int 値として返します。
ストリーム内のビットオフセットは無視され、0 として扱われます。
DataInput 内の readIntImageInputStream 内の readIntEOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public long readUnsignedInt()
throws IOException
ImageInputStream の記述:0xffffffffL でマスクします。その結果を符号なし long 値として返します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readUnsignedIntEOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public long readLong()
throws IOException
ImageInputStream の記述:long 値として返します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readLongImageInputStream 内の readLongEOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public float readFloat()
throws IOException
ImageInputStream の記述:float 値として返します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readFloatImageInputStream 内の readFloatEOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public double readDouble()
throws IOException
ImageInputStream の記述:double 値として返します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readDoubleImageInputStream 内の readDoubleEOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public String readLine()
throws IOException
ImageInputStream の記述:String として返されます。このメソッドはバイトを処理するものなので、Unicode 文字セットの入力を完全にはサポートしません。
ファイルの終わりが検出されるまでに 1 バイトも読み込めなかった場合には、null が返されます。そうでない場合、読み込まれた各バイトはゼロ拡張によって char 型に変換されます。文字 '\n' が検出されると、この文字は破棄され、読み込みは中止されます。文字 '\r' が検出されると、この文字は破棄され、その次のバイトが文字 '\n' に変換されますが、この文字も破棄されて、読み込みが中止されます。文字 '\n' と文字 '\r' のどちらかより前にファイルの終わりが検出されると、読み込みが中止されます。読み込みが中止されると、読み込まれて破棄されていないすべての文字を取り込んだ順番で格納している String が返されます。この文字列のそれぞれの文字は \u0100、つまり (char)256 より小さい値を持ちます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readLineImageInputStream 内の readLineIOException - 入出力エラーが発生した場合
public String readUTF()
throws IOException
ImageInputStream の記述:readUTF の汎用規約では、修正 UTF-8 形式でエンコードされた Unicode 文字列の表現を読み込みます。読み込まれた文字列は、String として返されます。
まず、2 バイトを読み込み、それを使って readUnsignedShort メソッドとまったく同じ方法で符号なし 16 ビット整数を作成します。この際、現在のバイト順の設定に関係なくネットワークバイト順を使用します。この整数値は「UTF 長」と呼ばれ、読み込まれる追加のバイト数を表します。次に、このバイトがグループ単位で文字に変換されます。各グループの長さは、グループの先頭バイトの値から計算されます。グループに後続のバイトがあれば、それは次のグループの先頭バイトです。
グループの先頭バイトがビットパターンの 0xxxxxxx (ただし、x は 0 または 1 を意味する) に一致する場合、グループはそのバイトだけで構成されます。バイトはゼロ拡張されて単一の文字を表現します。
グループの先頭バイトがビットパターン 110xxxxx に一致する場合、そのグループはそのバイト a と 2 番目のバイト b から構成されます。バイト b が存在しない場合 (バイト a が読み込まれた最後のバイトだった場合) や、バイト b がビットパターン 10xxxxxx に一致しない場合には、UTFDataFormatException がスローされます。そうでない場合、グループは次の文字に変換されます。
(char)(((a& 0x1F) << 6) | (b & 0x3F))
グループの先頭バイトがビットパターン 1110xxxx に一致する場合、そのグループは先頭バイト a に加えて、2 つのバイト b と c から構成されます。バイト c が存在しない場合 (バイト a が読み込まれた一連のバイトの最後の 2 つに入っていた場合) や、バイト b または c がビットパターン 10xxxxxx に一致しない場合には、UTFDataFormatException がスローされます。そうでない場合、グループは次の文字に変換されます。
(char)(((a & 0x0F) << 12) | ((b & 0x3F) << 6) | (c & 0x3F))
グループの先頭バイトがパターン 1111xxxx かパターン 10xxxxxx に一致する場合、UTFDataFormatException がスローされます。
この処理全体のどこかでファイルの終わりが検出されると、EOFException がスローされます。
各グループがこの処理で 1 文字に変換されると、対応するグループが入力ストリームから読み込まれたのと同じ順序で各文字が収集され、String を表現します。そして、この String が返されます。
現在のバイト順の設定は無視されます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
注: ここで使用される修正 UTF-8 は標準 UTF-8 と互換性がありません。このため、標準 UTF-8 を使用するイメージ形式の実装ではこのメソッドを使用しないでください。
DataInput 内の readUTFImageInputStream 内の readUTFEOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
UTFDataFormatException - 文字列中のバイトが、
有効な修正 UTF-8 形式でエンコードされた文字列以外であった場合
IOException - 入出力エラーが発生した場合
public void readFully(byte[] b,
int off,
int len)
throws IOException
ImageInputStream の記述:len バイトを読み込み、それらを b にインデックス off から格納します。ストリームの終わりに達すると、 EOFException がスローされます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readFullyImageInputStream 内の readFullyb - 書き込まれるバイト配列off - 書き込み先の b 内の開始位置len - byte の最大読み込み数
EOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public void readFully(byte[] b)
throws IOException
ImageInputStream の記述:b.length バイトを読み込み、それらを b にインデックス 0 から格納します。ストリームの終わりに達すると、 EOFException がスローされます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
DataInput 内の readFullyImageInputStream 内の readFullyb - byte の配列
EOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public void readFully(short[] s,
int off,
int len)
throws IOException
ImageInputStream の記述:len バイトの short (符号付き 16 ビット整数) 値を読み込み、それらを s にインデックス off から格納します。ストリームの終わりに達すると、 EOFException がスローされます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readFullys - 書き込まれる short 配列off - 書き込み先の b 内の開始位置len - short の最大読み込み数
EOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public void readFully(char[] c,
int off,
int len)
throws IOException
ImageInputStream の記述:len バイトの char (符号なし 16 ビット整数) 値を読み込み、それらを c にインデックス off から格納します。ストリームの終わりに達すると、 EOFException がスローされます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readFullyc - 書き込まれる char 配列off - 書き込み先の b 内の開始位置len - char の最大読み込み数
EOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public void readFully(int[] i,
int off,
int len)
throws IOException
ImageInputStream の記述:len バイトの int (符号付き 32 ビット整数) 値を読み込み、それらを i にインデックス off から格納します。ストリームの終わりに達すると、 EOFException がスローされます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readFullyi - 書き込まれる int 配列off - 書き込み先の b 内の開始位置len - int の最大読み込み数
EOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public void readFully(long[] l,
int off,
int len)
throws IOException
ImageInputStream の記述:len バイトの long (符号付き 64 ビット整数) 値を読み込み、それらを l にインデックス off から格納します。ストリームの終わりに達すると、 EOFException がスローされます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readFullyl - 書き込まれる long 配列off - 書き込み先の b 内の開始位置len - long の最大読み込み数
EOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public void readFully(float[] f,
int off,
int len)
throws IOException
ImageInputStream の記述:len バイトの float (32 ビット IEEE 単精度浮動小数点数) 値を読み込み、それらを f にインデックス off から格納します。ストリームの終わりに達すると、 EOFException がスローされます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readFullyf - 書き込まれる float 配列off - 書き込み先の b 内の開始位置len - float の最大読み込み数
EOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public void readFully(double[] d,
int off,
int len)
throws IOException
ImageInputStream の記述:len バイトの double (64 ビット IEEE 倍精度浮動小数点数) 値を読み込み、それらを d にインデックス off から格納します。ストリームの終わりに達すると、 EOFException がスローされます。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readFullyd - 書き込まれる double 配列off - 書き込み先の b 内の開始位置len - double の最大読み込み数
EOFException - すべてのバイトを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public long getStreamPosition()
throws IOException
ImageInputStream の記述:
ImageInputStream 内の getStreamPositionIOException - 入出力エラーが発生した場合
public int getBitOffset()
throws IOException
ImageInputStream の記述:readBits メソッドの呼び出しで暗黙的に更新されます。値 0 は読み込まれるバイトの最上位ビット、値 7 は最下位ビットを示します。
ビットオフセットは、ストリームを最初に開くときに 0 に設定され、seek、skipBytes、または read か readFully メソッドのいずれかが呼び出されると 0 にリセットされます。
ImageInputStream 内の getBitOffsetint
IOException - 入出力エラーが発生した場合ImageInputStream.setBitOffset(int)
public void setBitOffset(int bitOffset)
throws IOException
ImageInputStream の記述:getStreamPosition から返される、ストリーム内のバイトオフセットは変更されません。値 0 は読み込まれるバイトの最上位ビット、値 7 は最下位ビットを示します。
ImageInputStream 内の setBitOffsetbitOffset - 目的のオフセットで、
0 から 7 までの int
IOException - 入出力エラーが発生した場合ImageInputStream.getBitOffset()
public int readBit()
throws IOException
ImageInputStream の記述:0 または 1 の int として返します。ビットオフセットは 1 ずつ増加し、8 を法として減分します。
ImageInputStream 内の readBit0 または 1 の
int
EOFException - すべてのビットを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
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() の結果と異なる場合があります。
すべてのビットを読み込む前にストリームの終わりを検出した場合、EOFException がスローされます。
ImageInputStream 内の readBitsnumBits - 読み込むビット数を示す
0 から 64 までの int
long のビット列
EOFException - すべてのビットを読み込む前に、
このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合public long length()
-1L を返します。サブクラスでこのメソッドをオーバーライドして、実際の長さの情報を指定する必要があります。
ImageInputStream 内の length
public int skipBytes(int n)
throws IOException
seek(getStreamPosition() + n) を呼び出して、現在のストリーム位置を前進させます。
ビットオフセットは 0 にリセットされます。
DataInput 内の skipBytesImageInputStream 内の skipBytesn - 前方にシークするバイト数
int
IOException - 開始または終了位置を計算する際に getStreamPosition が IOException をスローする場合
public long skipBytes(long n)
throws IOException
seek(getStreamPosition() + n) を呼び出して、現在のストリーム位置を前進させます。
ビットオフセットは 0 にリセットされます。
ImageInputStream 内の skipBytesn - 前方にシークするバイト数
long
IOException - 開始または終了位置を計算する際に getStreamPosition が IOException をスローする場合
public void seek(long pos)
throws IOException
ImageInputStream の記述: pos が getflushedPosition から返されるフラッシュ位置よりも小さい場合は、IndexOutOfBoundsException がスローされます。
シークでファイルの終わりを通過することは正常であり、EOFException は読み込みの場合のみスローされます。
ImageInputStream 内の seekpos - 目的のファイルポインタ位置を示す
long
IOException - その他の入出力エラーが発生した場合public void mark()
ImageInputStream 内の mark
public void reset()
throws IOException
以前にマーク付けされた位置がストリームの破棄された部分である場合には IOException がスローされます。
ImageInputStream 内の resetIOException - 入出力エラーが発生した場合
public void flushBefore(long pos)
throws IOException
ImageInputStream の記述:IndexOutOfBoundsException がスローされます。
flushBefore を呼び出すと、このインタフェースを実装するクラスが、ストリームからデータを格納するのに使用するメモリやディスクスペースなどのリソースを解放できます。
ImageInputStream 内の flushBeforepos - フラッシュされるストリーム接頭辞の
長さを示す long
IOException - 入出力エラーが発生した場合
public void flush()
throws IOException
ImageInputStream の記述:flushBefore(getStreamPosition()) と同じです。
ImageInputStream 内の flushIOException - 入出力エラーが発生した場合public long getFlushedPosition()
ImageInputStream の記述:flushBefore 呼び出しに渡されたすべての値の最大値になります。
ImageInputStream 内の getFlushedPositionlongpublic boolean isCached()
ImageInputStream 内の isCachedImageInputStream がデータをキャッシュに格納する場合は
trueImageInputStream.isCachedMemory(),
ImageInputStream.isCachedFile()public boolean isCachedMemory()
ImageInputStream 内の isCachedMemoryImageInputStream がデータを
メインメモリにキャッシュする場合は trueImageInputStream.isCached(),
ImageInputStream.isCachedFile()public boolean isCachedFile()
ImageInputStream 内の isCachedFileImageInputStream がデータを
一時ファイルにキャッシュする場合は trueImageInputStream.isCached(),
ImageInputStream.isCachedMemory()
public void close()
throws IOException
ImageInputStream の記述:IOException がスローされるか不正な動作が実行される場合があります。このメソッドを呼び出すと、このインタフェースを実装するクラスが、メモリ、ディスクスペース、またはファイル記述子などのストリームに関連するリソースを解放できます。
ImageInputStream 内の closeIOException - 入出力エラーが発生した場合
protected void finalize()
throws Throwable
close メソッドを呼び出して、開いている入力ソースをすべて閉じます。このメソッドを、アプリケーションコードから呼び出してはいけません。
Object 内の finalizeThrowable - スーパークラスのファイナライズ時にエラーが発生した場合
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。