|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
public interface DataOutput
Java のプリミティブ型があればそのデータを一連のバイトに変換してバイナリストリームに書き込むために提供されています。また、String を修正 UTF-8 形式に変換して結果の一連のバイトを書き込む機能もあります。
このインタフェースのバイトを書き込むすべてのメソッドでは、なんらかの理由でバイトを書き込めない場合は、通常、IOException がスローされます。
DataInput,
DataOutputStream| メソッドの概要 | |
|---|---|
void |
write(byte[] b)
出力ストリームに配列 b のすべてのバイトを書き込みます。 |
void |
write(byte[] b,
int off,
int len)
配列 b から len バイトを順番に出力ストリームに書き込みます。 |
void |
write(int b)
引数 b の下位 8 ビットを出力ストリームに書き込みます。 |
void |
writeBoolean(boolean v)
1 つの boolean 値を出力ストリームに書き込みます。 |
void |
writeByte(int v)
引数 v の下位 8 ビットを出力ストリームに書き込みます。 |
void |
writeBytes(String s)
文字列を出力ストリームに書き込みます。 |
void |
writeChar(int v)
2 バイトから構成される char 値を出力ストリームに書き込みます。 |
void |
writeChars(String s)
文字列 s 内の各文字を、1 文字ごとに 2 バイトずつ順番に書き込みます。 |
void |
writeDouble(double v)
8 バイトから構成される double 値を出力ストリームに書き込みます。 |
void |
writeFloat(float v)
4 バイトから構成される float 値を出力ストリームに書き込みます。 |
void |
writeInt(int v)
4 バイトから構成される int 値を出力ストリームに書き込みます。 |
void |
writeLong(long v)
8 バイトから構成される long 値を出力ストリームに書き込みます。 |
void |
writeShort(int v)
引数の値を表す 2 バイトを出力ストリームに書き込みます。 |
void |
writeUTF(String str)
長さ情報の 2 バイトを出力ストリームに書き込みます。 |
| メソッドの詳細 |
|---|
void write(int b)
throws IOException
b の下位 8 ビットを出力ストリームに書き込みます。b の上位 24 ビットについては無視されます。
b - 書き込むバイト
IOException - 入出力エラーが発生した場合
void write(byte[] b)
throws IOException
b のすべてのバイトを書き込みます。b が null の場合、NullPointerException がスローされます。b.length がゼロの場合、書き込まれるバイトはありません。そうでない場合は、まずバイト b[0]、次に b[1] と順次書き込まれ、最後にバイト b[b.length-1] が書き込まれます。
b - データ
IOException - 入出力エラーが発生した場合
void write(byte[] b,
int off,
int len)
throws IOException
b から len バイトを順番に出力ストリームに書き込みます。b が null の場合は、NullPointerException がスローされます。off が負の値の場合、len が負の値の場合、あるいは off+len が配列 b の長さより大きい場合には、IndexOutOfBoundsException がスローされます。len がゼロの場合、書き込まれるバイトはありません。そうでない場合は、まずバイト b[off]、次に b[off+1] と順次書き込まれ、最後にバイト b[off+len-1] が書き込まれます。
b - データoff - データの開始オフセットlen - 書き込むバイト数
IOException - 入出力エラーが発生した場合
void writeBoolean(boolean v)
throws IOException
boolean 値を出力ストリームに書き込みます。引数 v が true の場合は、値 (byte)1 が書き込まれます。v が false の場合は、値 (byte)0 が書き込まれます。このメソッドが書き込むバイトは、DataInput インタフェースの readBoolean メソッドによって読み込まれます。次に、readBoolean メソッドにより、v に等しい boolean が返されます。
v - 書き込まれる boolean
IOException - 入出力エラーが発生した場合
void writeByte(int v)
throws IOException
v の下位 8 ビットを出力ストリームに書き込みます。v の上位 24 ビットは無視されます。つまり、writeByte の動作は、整数型引数の場合は write とまったく同じです。このメソッドが書き込むバイトは、DataInput インタフェースの readByte メソッドによって読み込まれます。次に、readByte メソッドにより、(byte)v に等しい byte が返されます。
v - 書き込まれるバイト値
IOException - 入出力エラーが発生した場合
void writeShort(int v)
throws IOException
(byte)(0xff & (v >> 8))
(byte)(0xff & v)
このメソッドが書き込むバイトは、DataInput インタフェースの readShort メソッドによって読み込まれます。次に、readShort メソッドにより、(short)v に等しい short が返されます。
v - 書き込まれる short 値
IOException - 入出力エラーが発生した場合
void writeChar(int v)
throws IOException
char 値を出力ストリームに書き込みます。次に示すバイト値が、この順番で書き込まれます。
(byte)(0xff & (v >> 8)) (byte)(0xff & v) このメソッドが書き込むバイトは、DataInput インタフェースの readChar メソッドによって読み込まれます。次に、readChar メソッドにより、(char)v に等しい char が返されます。
v - 書き込まれる char 値
IOException - 入出力エラーが発生した場合
void writeInt(int v)
throws IOException
int 値を出力ストリームに書き込みます。次に示すバイト値が、この順番で書き込まれます。
(byte)(0xff & (v >> 24)) (byte)(0xff & (v >> 16)) (byte)(0xff & (v >> 8)) (byte)(0xff & v) このメソッドが書き込むバイトは、DataInput インタフェースの readInt メソッドによって読み込まれます。次に、readInt メソッドにより、v に等しい int が返されます。
v - 書き込まれる int 値
IOException - 入出力エラーが発生した場合
void writeLong(long v)
throws IOException
long 値を出力ストリームに書き込みます。次に示すバイト値が、この順番で書き込まれます。
(byte)(0xff & (v >> 56)) (byte)(0xff & (v >> 48)) (byte)(0xff & (v >> 40)) (byte)(0xff & (v >> 32)) (byte)(0xff & (v >> 24)) (byte)(0xff & (v >> 16)) (byte)(0xff & (v >> 8)) (byte)(0xff & v) このメソッドが書き込むバイトは、DataInput インタフェースの readLong メソッドによって読み込まれます。次に、readLong メソッドにより、v に等しい long が返されます。
v - 書き込まれる long 値
IOException - 入出力エラーが発生した場合
void writeFloat(float v)
throws IOException
float 値を出力ストリームに書き込みます。このためには、まず Float.floatToIntBits メソッドとまったく同じ方法でこの float 値を int に変換してから、writeInt メソッドとまったく同じ方法で int 値を書き込みます。このメソッドが書き込むバイトは、DataInput インタフェースの readFloat メソッドによって読み込まれます。次に、readFloat メソッドにより、v に等しい float が返されます。
v - 書き込まれる float 値
IOException - 入出力エラーが発生した場合
void writeDouble(double v)
throws IOException
double 値を出力ストリームに書き込みます。このためには、まず Double.doubleToLongBits メソッドとまったく同じ方法でこの double 値を long に変換してから、writeLong メソッドとまったく同じ方法で long 値を書き込みます。このメソッドが書き込むバイトは、DataInput インタフェースの readDouble メソッドによって読み込まれます。次に、readDouble メソッドにより、v に等しい double が返されます。
v - 書き込まれる double 値
IOException - 入出力エラーが発生した場合
void writeBytes(String s)
throws IOException
s の各文字が順番に取り出され、1 バイトが出力ストリームに書き込まれます。s が null の場合は、NullPointerException がスローされます。 s.length がゼロの場合、書き込まれるバイトはありません。そうでない場合は、まず文字 s[0]、次に s[1] という具合に順次書き込まれ、最後に文字 s[s.length-1] が書き込まれます。各文字については、writeByte メソッドとまったく同じ方法で、1 バイト、つまり下位バイトが書き込まれます。文字列内の各文字の上位 8 ビットは無視されます。
s - 書き込まれるバイトの文字列
IOException - 入出力エラーが発生した場合
void writeChars(String s)
throws IOException
s 内の各文字を、1 文字ごとに 2 バイトずつ順番に書き込みます。s が null の場合、NullPointerException がスローされます。s.length がゼロの場合、書き込まれる文字はありません。そうでない場合は、まず文字 s[0]、次に s[1] と順次書き込まれ、最後に文字 s[s.length-1] が書き込まれます。各文字については、writeChar メソッドとまったく同じ方法で、上位バイトを先にして 2 バイトが実際に書き込まれます。
s - 書き込まれる文字列の値
IOException - 入出力エラーが発生した場合
void writeUTF(String str)
throws IOException
s 内の各文字の修正 UTF-8 表現が続きます。s が null の場合、NullPointerException がスローされます。文字列 s 内の各文字は、文字の値に基づいて、1、2、または 3 バイトのグループに変換されます。 文字 c が \u0001 〜 \u007f の範囲にある場合、次のような 1 バイトで表現されます。
(byte)c
文字 c が \u0000 の場合や、\u0080 〜 \u07ff の範囲にある場合には、次の順序で書き込まれる 2 バイトにより表されます。
(byte)(0xc0 | (0x1f & (c >> 6)))
(byte)(0x80 | (0x3f & c))
文字 c が \u0800 〜 uffff の範囲にある場合、次の順序で書き込まれる 3 バイトにより表されます。
(byte)(0xe0 | (0x0f & (c >> 12)))
(byte)(0x80 | (0x3f & (c >> 6)))
(byte)(0x80 | (0x3f & c))
まず、s のすべての文字を表すのに必要な総バイト数が計算されます。この数値が 65535 を超える場合は、UTFDataFormatException がスローされます。そうでない場合は、この長さが writeShort メソッドとまったく同じ方法で出力ストリームに書き込まれます。次に、文字列 s 内の各文字の 1、2、または 3 バイト表現が書き込まれます。
このメソッドが書き込むバイトは、DataInput インタフェースの readUTF メソッドによって読み込まれます。次に、readUTF メソッドにより、s に等しい String が返されます。
str - 書き込まれる文字列の値
IOException - 入出力エラーが発生した場合
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。