public class RandomAccessFile extends Object implements DataOutput, DataInput, Closeable
getFilePointer
メソッドにより読み取ることができ、seek
メソッドにより設定できます。
必要なバイト数を読み取る前に end-of-file に到達した場合、IOException
の一種である EOFException
がスローされますが、このことはこのクラスのすべての読み取りルーチンに当てはまります。end-of-file 以外のなんらかの理由によりバイトを読み取ることができない場合、EOFException
以外の IOException
がスローされます。特に、ストリームが閉じられた場合は、IOException
がスローされる可能性があります。
コンストラクタと説明 |
---|
RandomAccessFile(File file, String mode)
File 引数で指定されたファイルからの読み込み、およびオプションで書き込みを行うためのランダムアクセスファイルストリームを作成します。 |
RandomAccessFile(String name, String mode)
指定された名前のファイルからの読み込み、およびオプションで書き込みを行うためのランダムアクセスファイルストリームを作成します。
|
修飾子と型 | メソッドと説明 |
---|---|
void |
close()
このランダムアクセスファイルストリームを閉じて、ストリームに関連付けられているシステムリソースを解放します。
|
FileChannel |
getChannel()
このファイルに関連付けられている一意の
FileChannel オブジェクトを返します。 |
FileDescriptor |
getFD()
このストリームに関連する不透明なファイル記述子を返します。
|
long |
getFilePointer()
このファイルの現在のオフセットを返します。
|
long |
length()
このファイルの長さを返します。
|
int |
read()
このファイルからデータのバイトを読み取ります。
|
int |
read(byte[] b)
最大
b.length バイトのデータを、このファイルからバイト配列に読み込みます。 |
int |
read(byte[] b, int off, int len)
最大
len バイトのデータを、このファイルからバイト配列に読み込みます。 |
boolean |
readBoolean()
このファイルから
boolean を読み込みます。 |
byte |
readByte()
このファイルから署名付き 8 ビット値を読み取ります。
|
char |
readChar()
このファイルから文字を読み取ります。
|
double |
readDouble()
このファイルから
double を読み込みます。 |
float |
readFloat()
このファイルから
float を読み込みます。 |
void |
readFully(byte[] b)
現在のファイルポインタ位置から始まる
b.length バイトをこのファイルからバイト配列に読み込みます。 |
void |
readFully(byte[] b, int off, int len)
現在のファイルポインタ位置から始まる
len バイトを正確にこのファイルからバイト配列に読み込みます。 |
int |
readInt()
このファイルから署名付き 32 ビット整数文字を読み取ります。
|
String |
readLine()
このファイルのテキストの次の行を読み取ります。
|
long |
readLong()
このファイルから署名付き 64 ビット整数文字を読み取ります。
|
short |
readShort()
このファイルから署名付き 16 ビット数を読み取ります。
|
int |
readUnsignedByte()
このファイルから符号なし 8 ビット数を読み取ります。
|
int |
readUnsignedShort()
このファイルから符号なし 16 ビット数を読み取ります。
|
String |
readUTF()
このファイルから文字列を読み取ります。
|
void |
seek(long pos)
次の読み取りまたは書き込みが発生する、ファイルの先頭から測定したファイルポインタオフセットを設定します。
|
void |
setLength(long newLength)
このファイルの長さを設定します。
|
int |
skipBytes(int n)
n バイトの入力をスキップして、スキップしたバイトを破棄しようとします。 |
void |
write(byte[] b)
指定されたバイト配列からこのファイルに、現在のファイルポインタ位置から始まる
b.length バイトを書き込みます。 |
void |
write(byte[] b, int off, int len)
指定されたバイト配列のオフセット位置
off から始まる len バイトをこのファイルに書き込みます。 |
void |
write(int b)
このファイルに指定されたバイトを書き込みます。
|
void |
writeBoolean(boolean v)
boolean を 1 バイト値としてこのファイルに書き込みます。 |
void |
writeByte(int v)
byte を 1 バイト値としてこのファイルに書き込みます。 |
void |
writeBytes(String s)
文字列をバイトのシーケンスとしてファイルに書き込みます。
|
void |
writeChar(int v)
char を 2 バイト値として上位バイトから先にファイルに書き込みます。 |
void |
writeChars(String s)
文字列を文字のシーケンスとしてファイルに書き込みます。
|
void |
writeDouble(double v)
Double クラスの doubleToLongBits メソッドを使って double 型の引数を long 型に変換してから、その long 値を 8 バイト値として上位バイトから先にファイルに書き込みます。 |
void |
writeFloat(float v)
Float クラスの floatToIntBits メソッドを使って float 型の引数を int 型に変換してから、その int 値を 4 バイト値として上位バイトから先にファイルに書き込みます。 |
void |
writeInt(int v)
int を 4 バイト値として上位バイトから先にファイルに書き込みます。 |
void |
writeLong(long v)
long を 8 バイト値として上位バイトから先にファイルに書き込みます。 |
void |
writeShort(int v)
short を 2 バイト値として上位バイトから先にファイルに書き込みます。 |
void |
writeUTF(String str)
修正 UTF-8 エンコーディングを使って、マシンに依存しない方法で文字列をファイルに書き込みます。
|
public RandomAccessFile(String name, String mode) throws FileNotFoundException
FileDescriptor
オブジェクトが新しく作成されます。
mode 引数には、ファイルを開くときのアクセスモードを指定します。指定できる値とそれらの意味は、RandomAccessFile(File,String) コンストラクタの指定と同じです。
セキュリティーマネージャーが存在する場合は、ファイルの読み取りアクセスが許可されるかどうかを確認するために、name
を引数として checkRead
メソッドが呼び出されます。また、書き込みを許可するモードの場合は、ファイルへの書き込みアクセスが許可されているかどうかを確認するために、name
を引数としてセキュリティーマネージャーの checkWrite
メソッドが呼び出されます。
name
- システムに依存するファイル名mode
- アクセスモードIllegalArgumentException
- mode 引数が「r」、「rw」、「rws」、または 「rwd」 でない場合FileNotFoundException
- モードが "r" であるが、指定された文字列が既存の通常ファイルを示さない場合、モードが "rw" で始まるが、指定された文字列が既存の書き込み可能な通常ファイルを示さず、その名前の通常ファイルを新しく作成できない場合、あるいはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException
- セキュリティーマネージャーが存在し、その checkRead
メソッドがファイルの読み取りアクセスを拒否した場合、またはモードが「rw」でセキュリティーマネージャーの checkWrite
メソッドがファイルへの書き込みアクセスを拒否した場合SecurityException
、SecurityManager.checkRead(java.lang.String)
、SecurityManager.checkWrite(java.lang.String)
public RandomAccessFile(File file, String mode) throws FileNotFoundException
File
引数で指定されたファイルからの読み込み、およびオプションで書き込みを行うためのランダムアクセスファイルストリームを作成します。このファイル接続を表すために、新しい FileDescriptor
オブジェクトが作成されます。
mode 引数には、ファイルを開くときのアクセスモードを指定します。指定できる値とその意味を次に示します。
"rws" モードおよび "rwd" モードは、引数として true および false をそれぞれ渡して、
値
意味
"r" 読み取り専用で開きます。開いたオブジェクトの任意の write メソッドを呼び出すと、 IOException
がスローされます。"rw" 読み取りおよび書き込み用に開きます。ファイルが存在しない場合は、その作成が試みられます。 "rws" "rw" と同様に、読み込みおよび書き込み用に開きます。ファイルの内容またはメタデータを更新したときは、ベースとなる記憶装置にも同時に書き込む必要があります。 "rwd" "rw" と同様に、読み込みおよび書き込み用に開きます。ファイルの内容を更新したときは、ベースとなる記憶装置にも同時に適用する必要があります。
FileChannel
クラスの force(boolean)
メソッドのように動作しますが、すべての入出力操作に適用され、多くの場合、より効果的であることが異なります。ファイルがローカル記憶装置にある場合は、このクラスのメソッドを呼び出したときに、この呼び出しによってファイルに適用された変更が、その記憶装置にも常に書き込まれます。この方法により、システムがクラッシュしたとき、重要な情報を損失から保護できます。一方、ファイルがローカルの記憶装置上にない場合、書き込みは行われません。
"rwd" モードは、実行される入出力処理の数を減らすために使用できます。"rwd" を使用した場合は、ファイルの内容への更新だけが記憶装置に書き込まれます。"rws" を使用した場合は、ファイルの内容とメタデータの両方への更新を書き込む必要があります。これには、通常下位レベルの入出力処理が 1 回以上多く必要となります。
セキュリティーマネージャーが存在する場合は、ファイルの読み取りアクセスが許可されるかどうかを確認するために、file
をパス名の引数として checkRead
メソッドが呼び出されます。また、書き込みを許可するモードの場合は、ファイルへの書き込みアクセスが許可されているかどうかを確認するために、パスを引数としてセキュリティーマネージャーの checkWrite
メソッドが呼び出されます。
file
- ファイルオブジェクトmode
- アクセスモード。前述の説明を参照IllegalArgumentException
- mode 引数が「r」、「rw」、「rws」、または 「rwd」 でない場合FileNotFoundException
- モードが "r" であるが、指定されたファイルオブジェクトが既存の通常ファイルを示さない場合、モードが "rw" で始まるが、指定されたファイルオブジェクトが既存の書き込み可能な通常ファイルを示さず、その名前の通常ファイルを新しく作成できない場合、あるいはファイルのオープンまたは作成中にその他のエラーが発生した場合SecurityException
- セキュリティーマネージャーが存在し、その checkRead
メソッドがファイルの読み取りアクセスを拒否した場合、またはモードが「rw」でセキュリティーマネージャーの checkWrite
メソッドがファイルへの書き込みアクセスを拒否した場合SecurityManager.checkRead(java.lang.String)
, SecurityManager.checkWrite(java.lang.String)
, FileChannel.force(boolean)
public final FileDescriptor getFD() throws IOException
IOException
- 入出力エラーが発生した場合。FileDescriptor
public final FileChannel getChannel()
FileChannel
オブジェクトを返します。
返されたチャネルの position
は、
getFilePointer
メソッドによって返されるこのオブジェクトのファイルポインタオフセットと常に等しくなります。このオブジェクトのファイルポインタオフセットを明示的にまたはバイトの読み書きによって変更すると、チャネルの位置も変更されます。その逆の場合も同様です。このオブジェクトを通じてファイルの長さを変更すると、ファイルチャネルを通じて見える長さも変更されます。その逆の場合も同様です。
public int read() throws IOException
0x00-0x0ff
) の範囲の整数として返されます。入力がまだ利用できない場合、このメソッドはブロックされます。
RandomAccessFile
は InputStream
のサブクラスではありませんが、このメソッドは InputStream
の InputStream.read()
メソッドとまったく同様に動作します。
-1
。IOException
- 入出力エラーが発生した場合。end-of-file に到達した場合はスローされない。public int read(byte[] b, int off, int len) throws IOException
len
バイトのデータを、このファイルからバイト配列に読み込みます。このメソッドは、少なくとも 1 バイトの入力を利用できるまでブロックされます。
RandomAccessFile
は InputStream
のサブクラスではありませんが、このメソッドは InputStream
の InputStream.read(byte[], int, int)
メソッドとまったく同様に動作します。
b
- データの読み込み先のバッファー。off
- データが書き込まれる配列 b
の開始オフセット。len
- 読み込まれる最大バイト数。-1
。IOException
- ファイルの終わりに達していること以外の理由で最初のバイトを読み込めない場合、ランダムアクセスファイルが閉じられた場合、またはその他の入出力エラーが発生した場合。NullPointerException
- b
が null
である場合。IndexOutOfBoundsException
- off
が負の値の場合、len
が負の値の場合、あるいは len
が b.length - off
より大きい場合public int read(byte[] b) throws IOException
b.length
バイトのデータを、このファイルからバイト配列に読み込みます。このメソッドは、少なくとも 1 バイトの入力を利用できるまでブロックされます。
RandomAccessFile
は InputStream
のサブクラスではありませんが、このメソッドは InputStream
の InputStream.read(byte[])
メソッドとまったく同様に動作します。
b
- データの読み込み先のバッファー。-1
。IOException
- ファイルの終わりに達していること以外の理由で最初のバイトを読み込めない場合、ランダムアクセスファイルが閉じられた場合、またはその他の入出力エラーが発生した場合。NullPointerException
- b
が null
である場合。public final void readFully(byte[] b) throws IOException
b.length
バイトをこのファイルからバイト配列に読み込みます。このメソッドは、要求されたバイト数が読み取られるまでファイルから繰り返し読み取ります。このメソッドは、要求されたバイト数が読み取られるまで、ストリームの終わりが検出されるまで、または例外がスローされるまでブロックされます。readFully
、インタフェース: DataInput
b
- データの読み込み先のバッファー。EOFException
- すべてのバイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public final void readFully(byte[] b, int off, int len) throws IOException
len
バイトを正確にこのファイルからバイト配列に読み込みます。このメソッドは、要求されたバイト数が読み取られるまでファイルから繰り返し読み取ります。このメソッドは、要求されたバイト数が読み取られるまで、ストリームの終わりが検出されるまで、または例外がスローされるまでブロックされます。readFully
、インタフェース: DataInput
b
- データの読み込み先のバッファー。off
- データの開始オフセット。len
- 読み込むバイト数。EOFException
- すべてのバイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public int skipBytes(int n) throws IOException
n
バイトの入力をスキップして、スキップしたバイトを破棄しようとします。
このメソッドは、一部の少数のバイト (0 バイトも可能) をスキップできます。このスキップは複数の条件に起因する可能性がありますが、考えられる唯一の場合は、n
バイトがスキップされる前にファイルの終わりに達した場合です。このメソッドは、EOFException
をスローすることはありません。スキップされた実際のバイト数が返されます。n
が負の場合、バイトはスキップされません。
skipBytes
、インタフェース: DataInput
n
- スキップされるバイト数。IOException
- 入出力エラーが発生した場合。public void write(int b) throws IOException
write
、インタフェース: DataOutput
b
- 書き込まれる byte
。IOException
- 入出力エラーが発生した場合。public void write(byte[] b) throws IOException
b.length
バイトを書き込みます。write
、インタフェース: DataOutput
b
- データ。IOException
- 入出力エラーが発生した場合。public void write(byte[] b, int off, int len) throws IOException
off
から始まる len
バイトをこのファイルに書き込みます。write
、インタフェース: DataOutput
b
- データ。off
- データの開始オフセット。len
- 書き込むバイト数。IOException
- 入出力エラーが発生した場合。public long getFilePointer() throws IOException
IOException
- 入出力エラーが発生した場合。public void seek(long pos) throws IOException
pos
- ファイルの先頭を始点とした、バイト単位のオフセット位置。この位置にファイルポインタが設定される。IOException
- pos
が 0
より小さい場合、あるいは入出力エラーが発生した場合。public long length() throws IOException
IOException
- 入出力エラーが発生した場合。public void setLength(long newLength) throws IOException
length
メソッドにより返されたファイルの現在の長さが、newLength
引数よりも大きい場合、ファイルは切り詰められます。この場合、getFilePointer
メソッドにより返されたファイルオフセットが newLength
よりも大きい場合、このメソッドが返したあとのオフセットは newLength
と同じになります。
length
により返されたファイルの現在の長さが newLength
引数よりも小さい場合、ファイルは拡張されます。この場合、ファイルの拡張部分の内容は定義されていません。
newLength
- ファイルの必要な長さIOException
- 入出力エラーが発生した場合public void close() throws IOException
このファイルに関連付けられているチャネルがある場合は、そのチャネルも閉じます。
close
、インタフェース: Closeable
close
、インタフェース: AutoCloseable
IOException
- 入出力エラーが発生した場合。public final boolean readBoolean() throws IOException
boolean
を読み込みます。このメソッドは、現在のファイルポインタから開始して、単一バイトをファイルから読み取ります。値 0
は false
を表します。ほかの値はすべて true
を表します。このメソッドは、バイトを読み込み終わるか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。readBoolean
、インタフェース: DataInput
boolean
の値。EOFException
- このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public final byte readByte() throws IOException
b
であり、0 <= b <= 255
の場合、結果は次のとおりです。
(byte)(b)
このメソッドは、バイトを読み込み終わるか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readByte
、インタフェース: DataInput
byte
として解釈される、このファイルの次のバイト。EOFException
- このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public final int readUnsignedByte() throws IOException
このメソッドは、バイトを読み込み終わるか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readUnsignedByte
、インタフェース: DataInput
EOFException
- このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public final short readShort() throws IOException
b1
と b2
であり、2 つの値がそれぞれ 0
以上 255
以下の場合、結果は次のとおりです。
(short)((b1 << 8) | b2)
このメソッドは、2 バイトを読み込むか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readShort
、インタフェース: DataInput
EOFException
- 2 バイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public final int readUnsignedShort() throws IOException
b1
と b2
であり、0 <= b1, b2 <= 255
の場合、結果は次のとおりです。
(b1 << 8) | b2
このメソッドは、2 バイトを読み込むか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readUnsignedShort
、インタフェース: DataInput
EOFException
- 2 バイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public final char readChar() throws IOException
b1
と b2
であり、0 <= b1, b2 <= 255
の場合、結果は次のとおりです。
(char)((b1 << 8) | b2)
このメソッドは、2 バイトを読み込むか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readChar
、インタフェース: DataInput
char
として解釈される、このファイルの次の 2 バイト。EOFException
- 2 バイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public final int readInt() throws IOException
b1
、b2
、b3
、および b4
であり、0 <= b1, b2, b3, b4 <= 255
の場合、結果は次のとおりです。
(b1 << 24) | (b2 << 16) + (b3 << 8) + b4
このメソッドは、4 バイトを読み込むか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readInt
、インタフェース: DataInput
int
として解釈される、このファイルの次の 4 バイト。EOFException
- 4 バイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public final long readLong() throws IOException
b1
、b2
、b3
、b4
、b5
、b6
、b7
、および b8,
で、次の条件を満たす場合:
0 <= b1, b2, b3, b4, b5, b6, b7, b8 <=255,
結果は以下と同じになります。
((long)b1 << 56) + ((long)b2 << 48) + ((long)b3 << 40) + ((long)b4 << 32) + ((long)b5 << 24) + ((long)b6 << 16) + ((long)b7 << 8) + b8
このメソッドは、8 バイトを読み込むか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readLong
、インタフェース: DataInput
long
として解釈される、このファイルの次の 8 バイト。EOFException
- 8 バイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。public final float readFloat() throws IOException
float
を読み込みます。このメソッドは、現在のファイルポインタから開始して、readInt
メソッドを使った場合のようにファイルから int
値を読み取り、読み取った int
を Float
クラスの intBitsToFloat
メソッドを使って float
にします。
このメソッドは、4 バイトを読み込むか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readFloat
、インタフェース: DataInput
float
として解釈される、このファイルの次の 4 バイト。EOFException
- 4 バイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。readInt()
, Float.intBitsToFloat(int)
public final double readDouble() throws IOException
double
を読み込みます。このメソッドは、現在のファイルポインタから開始して、readLong
メソッドを使った場合のようにファイルから long
値を読み取り、読み取った long
を Double
クラスの longBitsToDouble
メソッドを使って double
にします。
このメソッドは、8 バイトを読み込むか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readDouble
、インタフェース: DataInput
double
として解釈される、このファイルの次の 8 バイト。EOFException
- 8 バイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。readLong()
, Double.longBitsToDouble(long)
public final String readLine() throws IOException
テキスト行は、復帰文字 ('\r'
)、改行文字 ('\n'
)、復帰文字とそれに続く改行文字、またはファイルの終わりで終了します。行末文字は破棄され、返された文字列の部分に含まれません。
このメソッドは、改行文字が読み込まれるまで、復帰とそれに続くバイトが読み込まれる (改行かどうかを確認する) まで、ファイルの終わりに達するまで、または例外がスローされるまでブロックします。
readLine
、インタフェース: DataInput
IOException
- 入出力エラーが発生した場合。public final String readUTF() throws IOException
現在のファイルポインタから開始して、readUnsignedShort
を使用した場合のように最初の 2 バイトを読み取ります。この値は、結果として得られる文字列の長さではなく、エンコードされた文字列にある後続のバイト数を提供します。後続のバイトは、修正 UTF-8 形式のバイトエンコーディング文字として解釈され、文字に変換されます。
このメソッドは、すべてのバイトを読み込み終わるか、ストリームの終わりが検出されるか、または例外がスローされるまでブロックします。
readUTF
、インタフェース: DataInput
EOFException
- すべてのバイトを読み込む前に、このファイルの終わりに達した場合。IOException
- 入出力エラーが発生した場合。UTFDataFormatException
- バイトが有効な修正 UTF-8 エンコーディングの Unicode 文字列を表さない場合。readUnsignedShort()
public final void writeBoolean(boolean v) throws IOException
boolean
を 1 バイト値としてこのファイルに書き込みます。値 true
は値 (byte)1
として書き込まれ、値 false
は値 (byte)0
として書き込まれます。書き込みは、ファイルポインタの現在の位置で始まります。writeBoolean
、インタフェース: DataOutput
v
- 書き込まれる boolean
値。IOException
- 入出力エラーが発生した場合。public final void writeByte(int v) throws IOException
byte
を 1 バイト値としてこのファイルに書き込みます。書き込みは、ファイルポインタの現在の位置で始まります。writeByte
、インタフェース: DataOutput
v
- 書き込まれる byte
値。IOException
- 入出力エラーが発生した場合。public final void writeShort(int v) throws IOException
short
を 2 バイト値として上位バイトから先にファイルに書き込みます。書き込みは、ファイルポインタの現在の位置で始まります。writeShort
、インタフェース: DataOutput
v
- 書き込まれる short
値。IOException
- 入出力エラーが発生した場合。public final void writeChar(int v) throws IOException
char
を 2 バイト値として上位バイトから先にファイルに書き込みます。書き込みは、ファイルポインタの現在の位置で始まります。writeChar
、インタフェース: DataOutput
v
- 書き込まれる char
値。IOException
- 入出力エラーが発生した場合。public final void writeInt(int v) throws IOException
int
を 4 バイト値として上位バイトから先にファイルに書き込みます。書き込みは、ファイルポインタの現在の位置で始まります。writeInt
、インタフェース: DataOutput
v
- 書き込まれる int
値。IOException
- 入出力エラーが発生した場合。public final void writeLong(long v) throws IOException
long
を 8 バイト値として上位バイトから先にファイルに書き込みます。書き込みは、ファイルポインタの現在の位置で始まります。writeLong
、インタフェース: DataOutput
v
- 書き込まれる long
値。IOException
- 入出力エラーが発生した場合。public final void writeFloat(float v) throws IOException
Float
クラスの floatToIntBits
メソッドを使って float 型の引数を int
型に変換してから、その int
値を 4 バイト値として上位バイトから先にファイルに書き込みます。書き込みは、ファイルポインタの現在の位置で始まります。writeFloat
、インタフェース: DataOutput
v
- 書き込まれる float
値。IOException
- 入出力エラーが発生した場合。Float.floatToIntBits(float)
public final void writeDouble(double v) throws IOException
Double
クラスの doubleToLongBits
メソッドを使って double 型の引数を long
型に変換してから、その long
値を 8 バイト値として上位バイトから先にファイルに書き込みます。書き込みは、ファイルポインタの現在の位置で始まります。writeDouble
、インタフェース: DataOutput
v
- 書き込まれる double
値。IOException
- 入出力エラーが発生した場合。Double.doubleToLongBits(double)
public final void writeBytes(String s) throws IOException
writeBytes
、インタフェース: DataOutput
s
- 書き込まれるバイトの文字列。IOException
- 入出力エラーが発生した場合。public final void writeChars(String s) throws IOException
writeChar
メソッドを使用した場合のように、データ出力ストリームに書き込まれます。書き込みは、ファイルポインタの現在の位置で始まります。writeChars
、インタフェース: DataOutput
s
- 書き込まれる String
値。IOException
- 入出力エラーが発生した場合。writeChar(int)
public final void writeUTF(String str) throws IOException
まず、現在のファイルポインタから開始して、後続のバイト数を指定する writeShort
メソッドを使った場合のように、2 バイトがファイルに書き込まれます。この値は、実際に書き込まれるバイト数であり、文字列の長さではありません。長さに続いて、各文字に修正 UTF-8 エンコーディングを使って、文字列の各文字が順に出力されます。
writeUTF
、インタフェース: DataOutput
str
- 書き込まれる文字列。IOException
- 入出力エラーが発生した場合。 バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.