nanoJBlend

java.io
インタフェース DataOutput

既知の実装クラスの一覧:
DataOutputStream

public interface DataOutput

DataOutput インタフェースは基本データ型のデータからバイナリデータストリームに変換して書き出す機能を定義します。 また、 StringModified 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 でエンコーディングして出力ストリームに書き込みます。
 

メソッドの詳細

write

void write(int b)
           throws IOException
引数 b の最下位8ビットをストリームに書き込みます。 上位24ビットは無視されます。

パラメータ:
b - ストリームに書き出す1バイト
例外:
IOException - I/Oエラーが発生した場合

write

void write(byte[] b)
           throws IOException
指定された配列 b のバイトデータ全てを出力ストリームに書き込みます。 bnull の場合、 NullPointerException がスローされます。 b.length が零の場合、書き込みは行われません。 これら以外の場合にはこのメソッドは、 b[0] 、次に b[1] の順に、最後のバイト b[b.length-1] まで書き込みます。

パラメータ:
b - ストリームに書き込むデータを保持するバイト配列
例外:
IOException - I/Oエラーが発生した場合

write

void write(byte[] b,
           int off,
           int len)
           throws IOException
指定されたバイト配列 b の、インデックス off から格納されている len 個のバイトデータを出力ストリームに書き込みます。 bnull の場合、 NullPointerException がスローされます。 off が負値の場合、 len が負値の場合、または off+lenb.length より大きい場合、 IndexOutOfBoundsException がスローされます。 len が零の場合、書き込みは行われません。 これら以外の場合にはこのメソッドは、 b[off] 、次に b[off+1] の順に b[off+len-1] まで書き込みます。

パラメータ:
b - 出力するデータを保持する配列
off - b 中の、出力するデータが格納されているオフセット
len - 出力するデータのバイト長
例外:
IOException - I/Oエラーが発生した場合

writeBoolean

void writeBoolean(boolean v)
                  throws IOException
boolean 値を出力ストリームに書き込みます。 引数 vtrue の場合 (byte)1false の場合 (byte)0 が出力されます。 このメソッドで書き込んだバイトデータは、 DataInputreadBoolean メソッドで v と同じ値に復元できます。

パラメータ:
v - 出力する boolean
例外:
IOException - I/Oエラーが発生した場合

writeByte

void writeByte(int v)
               throws IOException
v の最下位8ビットを出力ストリームに書き込みます。 上位24ビットは無視されます。 このメソッドで書き込んだバイトデータは、 DataInputreadByte メソッドで (byte)v と同じ値に復元できます。

パラメータ:
v - 出力する byte
例外:
IOException - I/Oエラーが発生した場合

writeShort

void writeShort(int v)
                throws IOException
int の下位2バイトを short 値の2バイトとして出力ストリームに書き込みます。 次に示す順に2バイトを書き込みます。

  1. (byte)(0xff & (v >> 8))
  2. (byte)(0xff & v)

このメソッドで書き込んだバイトデータは、 DataInputreadShort メソッドで (short)v と同じ値に復元できます。

パラメータ:
v - 出力する short
例外:
IOException - I/Oエラーが発生した場合

writeChar

void writeChar(int v)
               throws IOException
int の下位2バイトを char 値の2バイトとして出力ストリームに書き込みます。 次に示す順に2バイトを書き込みます。

  1. (byte)(0xff & (v >> 8))
  2. (byte)(0xff & v)

このメソッドで書き込んだバイトデータは、 DataInputreadChar メソッドで (char)v と同じ値に復元できます。

パラメータ:
v - 出力する char
例外:
IOException - I/Oエラーが発生した場合

writeInt

void writeInt(int v)
              throws IOException
int を4バイトのデータとして出力ストリームに書き込みます。 次に示す順に4バイトを書き込みます。

  1. (byte)(0xff & (v >> 24))
  2. (byte)(0xff & (v >> 16))
  3. (byte)(0xff & (v >> 8))
  4. (byte)(0xff & v)

このメソッドで書き込んだバイトデータは、 DataInputreadInt メソッドで v と同じ値に復元できます。

パラメータ:
v - 出力する int
例外:
IOException - I/Oエラーが発生した場合

writeLong

void writeLong(long v)
               throws IOException
long を8バイトのデータとして出力ストリームに書き込みます。 次に示す順に8バイトを書き込みます。

  1. (byte)(0xff & (v >> 56))
  2. (byte)(0xff & (v >> 48))
  3. (byte)(0xff & (v >> 40))
  4. (byte)(0xff & (v >> 32))
  5. (byte)(0xff & (v >> 24))
  6. (byte)(0xff & (v >> 16))
  7. (byte)(0xff & (v >> 8))
  8. (byte)(0xff & v)

このメソッドで書き込んだバイトデータは、 DataInputreadLong メソッドで v と同じ値に復元できます。

パラメータ:
v - 出力する long
例外:
IOException - I/Oエラーが発生した場合

writeChars

void writeChars(String s)
                throws IOException
s が表す文字列の文字全てを、最初から順に、各文字2バイトのバイトデータとして出力ストリームに書き込みます。 snull の場合、 NullPointerException がスローされます。 s.length が零の場合、書き込みは発生しません。 これら以外の場合、 s[0] から s[s.length-1] まで順に全ての文字を出力します。 それぞれの文字は、 writeChar で1文字が出力されるのと同一の処理方法で出力されます。

パラメータ:
s - 出力する String
例外:
IOException - I/Oエラーが発生した場合

writeUTF

void writeUTF(String s)
              throws IOException
指定された引数 s の文字列を Modified UTF-8 でエンコーディングして出力ストリームに書き込みます。 文字列を Modified UTF-8 でエンコードした文字ブロックの長さ2バイト、続けて文字ブロックを書き込みます。 snull の場合、 NullPointerException がスローされます。 String 中の個々の文字は、その文字コードに応じて1バイト、2バイト、または3バイトのグループに変換されます。

文字 c\u0001 から \u007f の範囲の値である場合、次の1バイトで表現されます。

(byte)c

文字 c\u0000 であるかまたは \u0080 から \u07ff の範囲の値である場合、次の2バイトで表現されます。

  1. (byte)(0xc0 | (0x1f & (c >> 6)))
  2. (byte)(0x80 | (0x3f & c))

文字 c\u0800 から \uffff の範囲の値である場合、次の3バイトで表現されます。

  1. (byte)(0xe0 | (0x0f & (c >> 12)))
  2. (byte)(0x80 | (0x3f & (c >> 6)))
  3. (byte)(0x80 | (0x3f & c))

String の文字列を Modified UTF-8 でエンコードした結果、総バイト長が65535を超える場合は UTFDataFormatException がスローされます。 総バイト長が超過しない場合、総バイト長を表す符号無し2バイト整数をまず出力ストリームに書き込みます。 続けて、各文字を変換した結果を出力ストリームに書き込みます。

このメソッドで書き込んだバイトデータは、 DataInputreadUTF メソッドで、 s が表す文字列と同じ文字列を保持する String に復元できます。

パラメータ:
s - 出力する String
例外:
IOException - I/Oエラーが発生した場合

nanoJBlend

Copyright 2005-2013 Aplix and/or its affiliates. All rights reserved. Aplix Confidential and Restricted.
NTT DOCOMO and Hitachi Kokusai Electric Confidential