IDataOutput.WriteUTF(String) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
出力ストリームに 2 バイトの長さ情報を書き込み、続いて文字列 s内のすべての文字の変更された UTF-8 表現を書き込みます。
[Android.Runtime.Register("writeUTF", "(Ljava/lang/String;)V", "GetWriteUTF_Ljava_lang_String_Handler:Java.IO.IDataOutputInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public void WriteUTF(string? s);
[<Android.Runtime.Register("writeUTF", "(Ljava/lang/String;)V", "GetWriteUTF_Ljava_lang_String_Handler:Java.IO.IDataOutputInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member WriteUTF : string -> unit
パラメーター
- s
- String
書き込む文字列値。
- 属性
例外
書き込み中に I/O エラーが発生した場合は 。
注釈
出力ストリームに 2 バイトの長さ情報を書き込み、続いて文字列 s内のすべての文字の変更された UTF-8 表現を書き込みます。
sがnullされると、NullPointerExceptionがスローされます。 文字列 s の各文字は、文字の値に応じて、1 バイト、2 バイト、または 3 バイトのグループに変換されます。
文字cが\u007f\u0001範囲内にある場合は、1 バイトで表されます。
(byte)c
文字cが\u0000または\u07ff\u0080範囲内にある場合は、次の順序で書き込まれる 2 バイトで表されます。
{@code
(byte)(0xc0 | (0x1f & (c >> 6)))
(byte)(0x80 | (0x3f & c))
}
文字cがuffff\u0800範囲内にある場合は、次の順序で書き込まれる 3 バイトで表されます。
{@code
(byte)(0xe0 | (0x0f & (c >> 12)))
(byte)(0x80 | (0x3f & (c >> 6)))
(byte)(0x80 | (0x3f & c))
}
まず、 s のすべての文字を表すために必要な合計バイト数が計算されます。 この数が 65535より大きい場合は、 UTFDataFormatException がスローされます。 それ以外の場合、この長さは、 writeShort メソッドの方法で出力ストリームに書き込まれます。その後、文字列 s 内の各文字の 1 バイト、2 バイト、または 3 バイト表現が書き込まれます。
このメソッドによって書き込まれたバイトは、インターフェイス DataInputのreadUTF メソッドによって読み取られる可能性があります。これにより、sと等しいStringが返されます。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。