WriteSurrogateCharEntity Method
Collapse the table of content
Expand the table of content

XmlWriter.WriteSurrogateCharEntity Method (Char, Char)

 

When overridden in a derived class, generates and writes the surrogate character entity for the surrogate character pair.

Namespace:   System.Xml
Assembly:  System.Xml (in System.Xml.dll)

public abstract void WriteSurrogateCharEntity(
	char lowChar,
	char highChar
)

Parameters

lowChar
Type: System.Char

The low surrogate. This must be a value between 0xDC00 and 0xDFFF.

highChar
Type: System.Char

The high surrogate. This must be a value between 0xD800 and 0xDBFF.

Exception Condition
ArgumentException

An invalid surrogate character pair was passed.

InvalidOperationException

An XmlWriter method was called before a previous asynchronous operation finished. In this case, InvalidOperationException is thrown with the message “An asynchronous operation is already in progress.”

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.

For the asynchronous version of this method, see WriteSurrogateCharEntityAsync.

Universal Windows Platform
Available since 4.5
.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Windows Phone
Available since 8.1
Return to top
Show:
© 2016 Microsoft