XmlWriter.WriteSurrogateCharEntity(Char, Char) メソッド


派生クラスでオーバーライドされると、サロゲート文字ペアのサロゲート文字エンティティを生成し、書き込みます。When overridden in a derived class, generates and writes the surrogate character entity for the surrogate character pair.

 abstract void WriteSurrogateCharEntity(char lowChar, char highChar);
public abstract void WriteSurrogateCharEntity (char lowChar, char highChar);
abstract member WriteSurrogateCharEntity : char * char -> unit
Public MustOverride Sub WriteSurrogateCharEntity (lowChar As Char, highChar As Char)



下位サロゲート。The low surrogate. この値は、0xDC00 から 0xDFFF の範囲内にある必要があります。This must be a value between 0xDC00 and 0xDFFF.


上位サロゲート。The high surrogate. この値は、0xD800 から 0xDBFF の範囲内にある必要があります。This must be a value between 0xD800 and 0xDBFF.


無効なサロゲート文字ペアが渡されました。An invalid surrogate character pair was passed.

先行の非同期操作が完了する前に、XmlWriter メソッドが呼び出されました。An XmlWriter method was called before a previous asynchronous operation finished. この場合、「非同期操作が既に実行されています」というメッセージと共に InvalidOperationException がスローされます。In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."


このメソッドは、UTF-16 エンコードを使用するシステムにのみ適用されます。This method is only applicable on systems that use UTF-16 encoding.

サロゲート文字エンティティは16進形式で記述されます。The surrogate character entity is written in hexadecimal format. サロゲート文字の範囲は、#x10FFFF に #x10000 ます。The range for surrogate characters is #x10000 to #x10FFFF. サロゲート文字エンティティを生成するには、次の式を使用します。 ( highChar -0xD800) * 0x400 + ( lowChar -0xDC00) +The following formula is used to generate the surrogate character entity: (highChar -0xD800) * 0x400 + (lowChar -0xDC00) + 0x10000

HTML と XML の両方で、ドキュメントの文字セット (および数値の文字参照の表記) は UCS [ISO-10646] に基づいています。For both HTML and XML, the document character set (and therefore the notation of numeric character references) is based on UCS [ISO-10646]. したがって、ソースドキュメント内の1つの数値文字参照は、文字列の 2 16 ビット単位に対応する場合があります (上位サロゲートと下位サロゲート)。A single numeric character reference in a source document may therefore in some cases correspond to two 16-bit units in a string (a high surrogate and a low surrogate). これらの16ビットユニットは、サロゲートペアと呼ばれます。These 16-bit units are referred to as a surrogate pair.

サロゲートまたは文字の詳細については、「」にある Unicode 3.0/Unicode 2.0 標準のセクション 3.7 https://www.unicode.org または W3C 勧告『 XML 1.0 』のセクション 2.2を参照してください。For more information regarding surrogates or characters, refer to section 3.7 of the Unicode 3.0/Unicode 2.0 standard located at https://www.unicode.org, or section 2.2 of the W3C XML 1.0 Recommendation.

このメソッドの非同期バージョンについては、「」を参照してください WriteSurrogateCharEntityAsyncFor the asynchronous version of this method, see WriteSurrogateCharEntityAsync.