java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.io.DataOutputStream
- すべての実装されたインタフェース:
- Closeable,- DataOutput,- Flushable,- AutoCloseable
public class DataOutputStream extends FilterOutputStream implements DataOutput
データ出力ストリームを使うと、アプリケーションはプリミティブ型のJavaデータを移植性のある形で出力ストリームに書き込むことができます。 アプリケーションはデータ入力ストリームを使ってデータを読み戻すことができます。 
 
DataOutputStreamは、複数の並行スレッドで安全に使用できません。 DataOutputStreamを複数のスレッドで使用する場合は、適切な同期によってデータ出力ストリームへのアクセスを制御する必要があります。
- 導入されたバージョン:
- 1.0
- 関連項目:
- 
フィールドのサマリーフィールドクラスjava.io.FilterOutputStreamで宣言されたフィールドout
- 
コンストラクタのサマリーコンストラクタ
- 
メソッドのサマリー修飾子と型メソッド説明voidflush()データ出力ストリームをフラッシュします。final intsize()カウンタwrittenの現在の値、つまりこのデータ出力ストリームにこれまでに書き込まれたバイト数を返します。voidwrite(byte[] b, int off, int len) 指定されたバイト配列のオフセット位置offから始まるlenバイトをベースとなる出力ストリームに書き込みます。voidwrite(int b) 指定されたバイト(引数bの下位8ビット)をベースとなる出力ストリームに書き込みます。final voidwriteBoolean(boolean v) boolean値を1バイト値としてベースとなる出力ストリームに書き込みます。final voidwriteByte(int v) byte値を1バイト値としてベースとなる出力ストリームに書き込みます。final voidwriteBytes(String s) 文字列をベースとなる出力ストリームに一連のバイトとして書き込みます。final voidwriteChar(int v) char値を2バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。final voidwriteChars(String s) 文字列をベースとなる出力ストリームに一連の文字型データとして書き込みます。final voidwriteDouble(double v) DoubleクラスのdoubleToLongBitsメソッドを使ってdouble型の引数をlong型に変換してから、そのlong値を8バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。final voidwriteFloat(float v) FloatクラスのfloatToIntBitsメソッドを使ってfloat型の引数をint型に変換してから、そのint値を4バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。final voidwriteInt(int v) int値を4バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。final voidwriteLong(long v) long値を8バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。final voidwriteShort(int v) short値を2バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。final void修正UTF-8エンコーディングを使って、マシンに依存しない方法で文字列をベースとなる出力ストリームに書き込みます。クラスjava.io.FilterOutputStreamで宣言されたメソッドclose, writeクラスjava.io.OutputStreamで宣言されたメソッドnullOutputStreamクラスjava.lang.Objectで宣言されたメソッドclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitインタフェースjava.io.DataOutputで宣言されたメソッドwrite
- 
フィールド詳細- 
writtenprotected int writtenそれまでにデータ出力ストリームに書き込まれたバイト数です。 このカウンタがオーバーフローすると、Integer.MAX_VALUEにラップされます。
 
- 
- 
コンストラクタの詳細- 
DataOutputStreampublic DataOutputStream(OutputStream out) 指定されたベースとなる出力ストリームへデータを書き込むための、データ出力ストリームを新しく作成します。 カウンタwrittenがゼロに設定されます。- パラメータ:
- out- あとで使うために保存されるベースとなる出力ストリーム。
- 関連項目:
 
 
- 
- 
メソッドの詳細- 
writepublic void write(int b) throws IOException 指定されたバイト(引数bの下位8ビット)をベースとなる出力ストリームに書き込みます。 例外がスローされない場合、カウンタwrittenは1だけ増加します。OutputStreamのwriteメソッドを実装します。- 定義:
- write、インタフェース- DataOutput
- オーバーライド:
- write、クラス- FilterOutputStream
- パラメータ:
- b- 書き込まれる- byte。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writepublic void write(byte[] b, int off, int len) throws IOException 指定されたバイト配列のオフセット位置offから始まるlenバイトをベースとなる出力ストリームに書き込みます。 例外がスローされない場合、カウンタwrittenはlenだけ増加します。- 定義:
- write、インタフェース- DataOutput
- オーバーライド:
- write、クラス- FilterOutputStream
- パラメータ:
- b- データ。
- off- データの開始オフセット。
- len- 書き込むバイト数。
- スロー:
- IOException- 入出力エラーが発生した場合。
- IndexOutOfBoundsException-- offが負の値の場合、- lenが負の値の場合、あるいは- lenが- b.length - offより大きい場合
- 関連項目:
 
- 
flushpublic void flush() throws IOExceptionデータ出力ストリームをフラッシュします。 バッファリングされている出力データは、強制的にストリームに書き込まれます。DataOutputStreamのflushメソッドはそのベースとなる出力ストリームのflushメソッドを呼び出します。- 定義:
- flush、インタフェース- Flushable
- オーバーライド:
- flush、クラス- FilterOutputStream
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeBooleanpublic final void writeBoolean(boolean v) throws IOException boolean値を1バイト値としてベースとなる出力ストリームに書き込みます。 値trueは値(byte)1として書き込まれ、値falseは値(byte)0として書き込まれます。 例外がスローされない場合、カウンタwrittenは1だけ増加します。- 定義:
- writeBoolean、インタフェース- DataOutput
- パラメータ:
- v- 書き込まれる- boolean値。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeBytepublic final void writeByte(int v) throws IOException byte値を1バイト値としてベースとなる出力ストリームに書き込みます。 例外がスローされない場合、カウンタwrittenは1だけ増加します。- 定義:
- writeByte、インタフェース- DataOutput
- パラメータ:
- v- 書き込まれる- byte値。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeShortpublic final void writeShort(int v) throws IOException short値を2バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。 例外がスローされない場合、カウンタwrittenは2だけ増加します。- 定義:
- writeShort、インタフェース- DataOutput
- パラメータ:
- v- 書き込まれる- short値。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeCharpublic final void writeChar(int v) throws IOException char値を2バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。 例外がスローされない場合、カウンタwrittenは2だけ増加します。- 定義:
- writeChar、インタフェース- DataOutput
- パラメータ:
- v- 書き込まれる- char値。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeIntpublic final void writeInt(int v) throws IOException int値を4バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。 例外がスローされない場合、カウンタwrittenは4だけ増加します。- 定義:
- writeInt、インタフェース- DataOutput
- パラメータ:
- v- 書き込まれる- int値。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeLongpublic final void writeLong(long v) throws IOException long値を8バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。 例外がスローされない場合、カウンタwrittenは8だけ増加します。- 定義:
- writeLong、インタフェース- DataOutput
- パラメータ:
- v- 書き込まれる- long値。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeFloatpublic final void writeFloat(float v) throws IOException FloatクラスのfloatToIntBitsメソッドを使ってfloat型の引数をint型に変換してから、そのint値を4バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。 例外がスローされない場合、カウンタwrittenは4だけ増加します。- 定義:
- writeFloat、インタフェース- DataOutput
- パラメータ:
- v- 書き込まれる- float値。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeDoublepublic final void writeDouble(double v) throws IOException DoubleクラスのdoubleToLongBitsメソッドを使ってdouble型の引数をlong型に変換してから、そのlong値を8バイト値として上位バイトから先にベースとなる出力ストリームに書き込みます。 例外がスローされない場合、カウンタwrittenは8だけ増加します。- 定義:
- writeDouble、インタフェース- DataOutput
- パラメータ:
- v- 書き込まれる- double値。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeBytespublic final void writeBytes(String s) throws IOException 文字列をベースとなる出力ストリームに一連のバイトとして書き込みます。 文字列の各文字は、高位の8ビットを破棄して順に書き込まれます。 例外がスローされない場合、カウンタwrittenはsの長さだけ増加します。- 定義:
- writeBytes、インタフェース- DataOutput
- パラメータ:
- s- 書き込まれるバイトの文字列。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeCharspublic final void writeChars(String s) throws IOException 文字列をベースとなる出力ストリームに一連の文字型データとして書き込みます。 各文字は、writeCharメソッドを使用した場合のように、データ出力ストリームに書き込まれます。 例外がスローされない場合、カウンタwrittenはsの長さの2倍だけ増加します。- 定義:
- writeChars、インタフェース- DataOutput
- パラメータ:
- s- 書き込まれる- String値。
- スロー:
- IOException- 入出力エラーが発生した場合。
- 関連項目:
 
- 
writeUTFpublic final void writeUTF(String str) throws IOException 修正UTF-8エンコーディングを使って、マシンに依存しない方法で文字列をベースとなる出力ストリームに書き込みます。まず、最初の2バイトが writeShortメソッドと同じ方法で出力ストリームに書き込まれ、これがあとに続くバイト数を示します。 この値は、実際に書き込まれるバイト数であり、文字列の長さではありません。 この長さ情報に続いて、文字列の各文字データが順番に修正UTF-8エンコーディングで出力されます。 例外がスローされない場合、カウンタwrittenは出力ストリームに書き込まれた総バイト数だけ増加します。 これは、2にstrの長さを加えた値以上で、2にstrの長さの3倍を加えた値以下になります。- 定義:
- writeUTF、インタフェース- DataOutput
- パラメータ:
- str- 書き込まれる文字列。
- スロー:
- UTFDataFormatException-- strの修正UTF-8エンコーディングが65535バイトを超える場合
- IOException- 他のI/Oエラーが発生した場合。
- 関連項目:
 
- 
sizepublic final int size()カウンタwrittenの現在の値、つまりこのデータ出力ストリームにこれまでに書き込まれたバイト数を返します。 このカウンタがオーバーフローすると、Integer.MAX_VALUEにラップされます。- 戻り値:
- writtenフィールドの値。
- 関連項目:
 
 
-