|
nanoJBlend | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
public interface DataOutput
DataOutput インタフェースは基本データ型のデータからバイナリデータストリームに変換して書き出す機能を定義します。
また、 String を Modified UTF-8 形式のデータに変換して書き出す機能も定義します。
このインタフェースの、バイトデータを書き出すメソッドでは、何らかの理由で書き込みができない場合には IOException がスローされます。
| メソッドの概要 | |
|---|---|
void |
write(byte[] b)
指定された配列 b のバイトデータ全てを出力ストリームに書き込みます。 |
void |
write(byte[] b,
int off,
int len)
指定されたバイト配列 b の、インデックス off から格納されている len 個のバイトデータを出力ストリームに書き込みます。 |
void |
write(int b)
引数 b の最下位8ビットをストリームに書き込みます。 |
void |
writeBoolean(boolean v)
boolean 値を出力ストリームに書き込みます。 |
void |
writeByte(int v)
v の最下位8ビットを出力ストリームに書き込みます。 |
void |
writeChar(int v)
int の下位2バイトを char 値の2バイトとして出力ストリームに書き込みます。 |
void |
writeChars(String s)
s が表す文字列の文字全てを、最初から順に、各文字2バイトのバイトデータとして出力ストリームに書き込みます。 |
void |
writeInt(int v)
int を4バイトのデータとして出力ストリームに書き込みます。 |
void |
writeLong(long v)
long を8バイトのデータとして出力ストリームに書き込みます。 |
void |
writeShort(int v)
int の下位2バイトを short 値の2バイトとして出力ストリームに書き込みます。 |
void |
writeUTF(String s)
指定された引数 s の文字列を Modified UTF-8 でエンコーディングして出力ストリームに書き込みます。 |
| メソッドの詳細 |
|---|
void write(int b)
throws IOException
b の最下位8ビットをストリームに書き込みます。
上位24ビットは無視されます。
b - ストリームに書き出す1バイト
IOException - I/Oエラーが発生した場合
void write(byte[] b)
throws IOException
b のバイトデータ全てを出力ストリームに書き込みます。
b が null の場合、 NullPointerException がスローされます。
b.length が零の場合、書き込みは行われません。
これら以外の場合にはこのメソッドは、 b[0] 、次に b[1] の順に、最後のバイト b[b.length-1] まで書き込みます。
b - ストリームに書き込むデータを保持するバイト配列
IOException - I/Oエラーが発生した場合
void write(byte[] b,
int off,
int len)
throws IOException
b の、インデックス off から格納されている len 個のバイトデータを出力ストリームに書き込みます。
b が null の場合、 NullPointerException がスローされます。
off が負値の場合、 len が負値の場合、または off+len が b.length より大きい場合、 IndexOutOfBoundsException がスローされます。
len が零の場合、書き込みは行われません。
これら以外の場合にはこのメソッドは、 b[off] 、次に b[off+1] の順に b[off+len-1] まで書き込みます。
b - 出力するデータを保持する配列off - b 中の、出力するデータが格納されているオフセットlen - 出力するデータのバイト長
IOException - I/Oエラーが発生した場合
void writeBoolean(boolean v)
throws IOException
boolean 値を出力ストリームに書き込みます。
引数 v が true の場合 (byte)1 、 false の場合 (byte)0 が出力されます。
このメソッドで書き込んだバイトデータは、 DataInput の readBoolean メソッドで v と同じ値に復元できます。
v - 出力する boolean 値
IOException - I/Oエラーが発生した場合
void writeByte(int v)
throws IOException
v の最下位8ビットを出力ストリームに書き込みます。
上位24ビットは無視されます。
このメソッドで書き込んだバイトデータは、 DataInput の readByte メソッドで (byte)v と同じ値に復元できます。
v - 出力する byte 値
IOException - I/Oエラーが発生した場合
void writeShort(int v)
throws IOException
int の下位2バイトを short 値の2バイトとして出力ストリームに書き込みます。
次に示す順に2バイトを書き込みます。
(byte)(0xff & (v >> 8))(byte)(0xff & v)
このメソッドで書き込んだバイトデータは、 DataInput の readShort メソッドで (short)v と同じ値に復元できます。
v - 出力する short 値
IOException - I/Oエラーが発生した場合
void writeChar(int v)
throws IOException
int の下位2バイトを char 値の2バイトとして出力ストリームに書き込みます。
次に示す順に2バイトを書き込みます。
(byte)(0xff & (v >> 8))(byte)(0xff & v)
このメソッドで書き込んだバイトデータは、 DataInput の readChar メソッドで (char)v と同じ値に復元できます。
v - 出力する char 値
IOException - I/Oエラーが発生した場合
void writeInt(int v)
throws IOException
int を4バイトのデータとして出力ストリームに書き込みます。
次に示す順に4バイトを書き込みます。
(byte)(0xff & (v >> 24))(byte)(0xff & (v >> 16))(byte)(0xff & (v >> 8))(byte)(0xff & v)
このメソッドで書き込んだバイトデータは、 DataInput の readInt メソッドで v と同じ値に復元できます。
v - 出力する int 値
IOException - I/Oエラーが発生した場合
void writeLong(long v)
throws IOException
long を8バイトのデータとして出力ストリームに書き込みます。
次に示す順に8バイトを書き込みます。
(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 メソッドで v と同じ値に復元できます。
v - 出力する long 値
IOException - I/Oエラーが発生した場合
void writeChars(String s)
throws IOException
s が表す文字列の文字全てを、最初から順に、各文字2バイトのバイトデータとして出力ストリームに書き込みます。
s が null の場合、 NullPointerException がスローされます。
s.length が零の場合、書き込みは発生しません。
これら以外の場合、 s[0] から s[s.length-1] まで順に全ての文字を出力します。
それぞれの文字は、 writeChar で1文字が出力されるのと同一の処理方法で出力されます。
s - 出力する String
IOException - I/Oエラーが発生した場合
void writeUTF(String s)
throws IOException
s の文字列を Modified UTF-8 でエンコーディングして出力ストリームに書き込みます。
文字列を Modified UTF-8 でエンコードした文字ブロックの長さ2バイト、続けて文字ブロックを書き込みます。
s が null の場合、 NullPointerException がスローされます。
String 中の個々の文字は、その文字コードに応じて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))
String の文字列を Modified UTF-8 でエンコードした結果、総バイト長が65535を超える場合は UTFDataFormatException がスローされます。
総バイト長が超過しない場合、総バイト長を表す符号無し2バイト整数をまず出力ストリームに書き込みます。
続けて、各文字を変換した結果を出力ストリームに書き込みます。
このメソッドで書き込んだバイトデータは、 DataInput の readUTF メソッドで、 s が表す文字列と同じ文字列を保持する String に復元できます。
s - 出力する String
IOException - I/Oエラーが発生した場合
|
nanoJBlend | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||