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引数には、ファイルを開くときのアクセス・モードを指定します。 指定できる値とその意味を次に示します。
値 | 意味 |
---|---|
"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, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。