XmlWriter.WriteSurrogateCharEntity Method
When overridden in a derived class, generates and writes the surrogate character entity for the surrogate character pair.
[Visual Basic] Public MustOverride Sub WriteSurrogateCharEntity( _ ByVal lowChar As Char, _ ByVal highChar As Char _ ) [C#] public abstract void WriteSurrogateCharEntity( char lowChar, char highChar ); [C++] public: virtual void WriteSurrogateCharEntity( __wchar_t lowChar, __wchar_t highChar ) = 0; [JScript] public abstract function WriteSurrogateCharEntity( lowChar : Char, highChar : Char );
Parameters
- lowChar
- The low surrogate. This must be a value between 0xDC00 and 0xDFFF.
- highChar
- The high surrogate. This must be a value between 0xD800 and 0xDBFF.
Exceptions
| Exception Type | Condition |
|---|---|
| Exception | An invalid surrogate character pair was passed. |
Remarks
This method is only applicable on systems that use UTF-16 encoding.
The surrogate character entity is written in hexadecimal format. The range for surrogate characters is #x10000 to #x10FFFF. The following formula is used to generate the surrogate character entity: (highChar-0xD800) * 0x400 + (lowChar-0xDC00) + 0x10000
For both HTML and XML, the document character set (and therefore the notation of numeric character references) is based on UCS [ISO-10646]. 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). These 16-bit units are referred to as a surrogate pair.
For more information regarding surrogates or characters, refer to section 3.7 of the Unicode 3.0/Unicode 2.0 standard located at http://www.unicode.org, or section 2.2 of the W3C XML 1.0 Recommendation located at http://www.w3.org/TR/REC-xml#charsets.
Requirements
Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework, Common Language Infrastructure (CLI) Standard