|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.imageio.stream.ImageInputStreamImpl
public abstract class ImageInputStreamImpl
ImageInputStream インタフェースを実装する抽象クラスです。このクラスの目的は、サブクラスで実装する必要のあるメソッドの数を減らすことです。
特に、このクラスはバイト順の解釈、バッファリング、マーク付けとリセット、破棄、クローズ、および廃棄の大半またはすべてを処理します。
| フィールドの概要 | |
|---|---|
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 |
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 バイトの入力データを読み込んで、そのバイトがゼロ以外の場合は true、そのバイトがゼロの場合は false を返します。 |
byte |
readByte()
1 バイトの入力データを読み込んで返します。 |
void |
readBytes(IIOByteBuffer buf,
int len)
ストリームから len バイトまでを読み込み、指定された IIOByteBuffer を変更してデータを検出可能なバイト配列、オフセット、および長さを示します。 |
char |
readChar()
入力データの char を読み込んで、char 値を返します。 |
double |
readDouble()
8 バイトの入力データを読み込んで、 double 値を返します。 |
float |
readFloat()
4 バイトの入力データを読み込んで、 float 値を返します。 |
void |
readFully(byte[] b)
入力ストリームからいくつかのバイトを読み込んで、バッファ配列 b に格納します。 |
void |
readFully(byte[] b,
int off,
int len)
入力ストリームから len バイトを読み込みます。 |
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()
1 バイトの入力データを読み込んで、 int 型にゼロ拡張して結果を返します。 |
long |
readUnsignedInt()
ストリームから 4 バイトを読み込んで現在のバイト順に従って概念上それらを連結し、結果の値を long に変換して、符号拡張ビットを取り除くために 0xffffffffL でマスクします。 |
int |
readUnsignedShort()
2 バイトの入力データを読み込んで、 0 〜 65535 の範囲の int 値を返します。 |
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
ImageInputStream の記述: ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readIOException - 入出力エラーが発生した場合
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
DataInput の記述: true、そのバイトがゼロの場合は false を返します。このメソッドは、DataOutput インタフェースの writeBoolean メソッドが書き込むバイトを読み込むのに適しています。
DataInput 内の readBooleanImageInputStream 内の readBooleanboolean の値
EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public byte readByte()
throws IOException
DataInput の記述: -128 〜 127 の範囲 (上下限値を含む) の符号付きの値として処理されます。このメソッドは、DataOutput インタフェースの writeByte メソッドによって書き込まれたバイトを読み込むのに適しています。
DataInput 内の readByteImageInputStream 内の readByteEOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public int readUnsignedByte()
throws IOException
DataInput の記述: int 型にゼロ拡張して結果を返します。このため、結果は 0 〜 255 の範囲内になります。DataOutput インタフェースの writeByte メソッドの引数がこの範囲内の値になるように意図されている場合、このメソッドは writeByte メソッドによって書き込まれたバイトを読み込むのに適しています。
DataInput 内の readUnsignedByteImageInputStream 内の readUnsignedByteEOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public short readShort()
throws IOException
DataInput の記述: short 値を返します。a を 1 番目のバイト、b を 2 番目のバイトとすると、戻り値は次のようになります。
(short)((a <<
8) | (b &
0xff))
このメソッドは、DataOutput インタフェースの writeShort メソッドによって書き込まれたバイトを読み込むのに適しています。
DataInput 内の readShortImageInputStream 内の readShortEOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public int readUnsignedShort()
throws IOException
DataInput の記述: 0 〜 65535 の範囲の int 値を返します。a を 1 番目のバイト、b を 2 番目のバイトとすると、戻り値は次のようになります。
(((a &
0xff) <<
8) | (b &
0xff))
DataOutput インタフェースの writeShort メソッドの引数が 0 〜 65535 の範囲の値になるように意図されている場合、このメソッドは writeShort メソッドによって書き込まれたバイトを読み込むのに適しています。
DataInput 内の readUnsignedShortImageInputStream 内の readUnsignedShortEOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public char readChar()
throws IOException
DataInput の記述: char を読み込んで、char 値を返します。Unicode char は 2 バイトから構成されます。a を 1 番目のバイト、b を 2 番目のバイトとすると、戻り値は次のようになります。
(char)((a <<
8) | (b &
0xff))
このメソッドは、DataOutput インタフェースの writeChar メソッドによって書き込まれたバイトを読み込むのに適しています。
DataInput 内の readCharImageInputStream 内の readCharchar の値
EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.readUnsignedShort()
public int readInt()
throws IOException
DataInput の記述: int 値を返します。a を 1 番目、b を 2 番目、c を 3 番目、d を 4 番目のバイトとすると、戻り値は次のようになります。
(((a & 0xff) << 24) | ((b & 0xff) << 16) | ((c & 0xff) << 8) | (d & 0xff)) このメソッドは、DataOutput インタフェースの writeInt メソッドによって書き込まれたバイトを読み込むのに適しています。
DataInput 内の readIntImageInputStream 内の readIntint の値
EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public long readUnsignedInt()
throws IOException
ImageInputStream の記述: 0xffffffffL でマスクします。その結果を符号なし long 値として返します。
ストリーム内のビットオフセットは、読み込みを行う前に 0 にリセットされます。
ImageInputStream 内の readUnsignedIntEOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public long readLong()
throws IOException
DataInput の記述: long 値を返します。a を 1 番目、b を 2 番目、c を 3 番目、d を 4 番目、e を 5 番目、f を 6 番目、g を 7 番目、h を 8 番目のバイトとすると、戻り値は次のようになります。
(((long)(a & 0xff) << 56) | ((long)(b & 0xff) << 48) | ((long)(c & 0xff) << 40) | ((long)(d & 0xff) << 32) | ((long)(e & 0xff) << 24) | ((long)(f & 0xff) << 16) | ((long)(g & 0xff) << 8) | ((long)(h & 0xff)))
このメソッドは、DataOutput インタフェースの writeLong メソッドによって書き込まれたバイトを読み込むのに適しています。
DataInput 内の readLongImageInputStream 内の readLonglong の値
EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public float readFloat()
throws IOException
DataInput の記述: float 値を返します。このためには、まず readInt メソッドとまったく同じ方法で int 値を作成し、次にこの int 値を Float.intBitsToFloat メソッドとまったく同じ方法で float に変換します。このメソッドは、DataOutput インタフェースの writeFloat メソッドによって書き込まれたバイトを読み込むのに適しています。
DataInput 内の readFloatImageInputStream 内の readFloatfloat の値
EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public double readDouble()
throws IOException
DataInput の記述: double 値を返します。このためには、まず readlong メソッドとまったく同じ方法で long 値を作成し、次にこの long 値を Double.longBitsToDouble メソッドとまったく同じ方法で double に変換します。このメソッドは、DataOutput インタフェースの writeDouble メソッドによって書き込まれたバイトを読み込むのに適しています。
DataInput 内の readDoubleImageInputStream 内の readDoubledouble の値
EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合ImageInputStream.getByteOrder()
public String readLine()
throws IOException
DataInput の記述: String として返されます。このメソッドはバイトを処理するものなので、Unicode 文字セットの入力を完全にはサポートしません。
ファイルの終わりが検出されるまでに 1 バイトも読み込めなかった場合には、null が返されます。そうでない場合、読み込まれた各バイトはゼロ拡張によって char 型に変換されます。文字 '\n' が検出されると、この文字は破棄され、読み込みは中止されます。文字 '\r' が検出されると、この文字は破棄され、その次のバイトが文字 '\n' に変換されますが、この文字も破棄されて、読み込みが中止されます。文字 '\n' と文字 '\r' のどちらかより前にファイルの終わりが検出されると、読み込みが中止されます。読み込みが中止されると、読み込まれて破棄されていないすべての文字を取り込んだ順番で格納している String が返されます。この文字列のそれぞれの文字は \u0100、つまり (char)256 より小さい値を持ちます。
DataInput 内の readLineImageInputStream 内の readLinenull
IOException - 入出力エラーが発生した場合
public String readUTF()
throws IOException
DataInput の記述: 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 が返されます。
DataOutput インタフェースの writeUTF メソッドを使うと、このメソッドで読み込むのに適したデータを書き込むことができます。
DataInput 内の readUTFImageInputStream 内の readUTFEOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
UTFDataFormatException - 文字列中のバイトが、有効な修正 UTF-8 形式でエンコードされた文字列以外であった場合
public void readFully(byte[] b,
int off,
int len)
throws IOException
DataInput の記述: len バイトを読み込みます。
このメソッドは、以下の条件の 1 つが発生するまでブロックします。
len バイトの入力データが読み込み可能。この場合、通常の値が返される
EOFException がスローされる
EOFException ではなく IOException がスローされる
b が null の場合、NullPointerException がスローされます。off が負の値の場合、len が負の値の場合、あるいは off+len が配列 b の長さよりも大きい場合、IndexOutOfBoundsException がスローされます。len がゼロの場合、読み込まれるバイトはありません。そうでない場合、読み込まれる最初のバイトは要素 b[off] に、次のバイトは要素 b[off+1] にと順次格納されていきます。読み込まれるバイト数は、最大でも len までです。
DataInput 内の readFullyImageInputStream 内の readFullyb - データの読み込み先のバッファoff - データへのオフセットを指定する intlen - 読み込むバイト数を指定する int
EOFException - すべてのバイトを読み込む前に、このストリームの終わりに達した場合
IOException - 入出力エラーが発生した場合
public void readFully(byte[] b)
throws IOException
DataInput の記述: b に格納します。読み込まれるバイト数は b の長さに一致します。
このメソッドは、以下の条件の 1 つが発生するまでブロックします。
b.length バイトの入力データが読み込み可能。この場合、通常の値が返される
EOFException がスローされる
EOFException ではなく IOException がスローされる
b が null の場合、NullPointerException がスローされます。b.length がゼロの場合、読み込まれるバイトはありません。そうでない場合、読み込まれる最初のバイトは要素 b[0] に、次のバイトは要素 b[1] にと順次格納されていきます。このメソッドから例外がスローされると、b のすべてではないにしても一部のバイトが入力ストリームのデータで更新されています。
DataInput 内の readFullyImageInputStream 内の readFullyb - データの読み込み先のバッファ
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 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。