XmlWriter.WriteChars Method

Microsoft Silverlight will reach end of support after October 2021. Learn more.

When overridden in a derived class, writes text one buffer at a time.

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

Syntax

'Declaration
Public MustOverride Sub WriteChars ( _
    buffer As Char(), _
    index As Integer, _
    count As Integer _
)
public abstract void WriteChars(
    char[] buffer,
    int index,
    int count
)

Parameters

  • buffer
    Type: array<System.Char[]
    Character array containing the text to write.
  • index
    Type: System.Int32
    The position in the buffer indicating the start of the text to write.
  • count
    Type: System.Int32
    The number of characters to write.

Exceptions

Exception Condition
ArgumentNullException

buffer is nulla null reference (Nothing in Visual Basic).

ArgumentOutOfRangeException

index or count is less than zero.

-or-

The buffer length minus index is less than count; the call results in surrogate pair characters being split or an invalid surrogate pair being written.

ArgumentException

The buffer parameter value is not valid.

IndexOutOfRangeException

index is outside the bounds of the buffer.

Remarks

This method can be used to write large amounts of text one buffer at a time.

Special handling must be done to ensure the WriteChars method does not split surrogate pair characters across multiple buffer writes. The XML specification defines the valid ranges for surrogate pairs.

An exception is thrown if surrogate pair characters are written that would result in the surrogate pair characters being split in the buffer.

Examples

                StringBuilder output = new StringBuilder();

                // Output to StringBuilder
                using (XmlWriter writer = XmlWriter.Create(output))
                {
                    writer.WriteStartDocument();

                    char[] ch = new char[4];
                    ch[0] = 't';
                    ch[1] = 'e';
                    ch[2] = 'x';
                    ch[3] = 't';

                    writer.WriteStartElement("WriteCharacters");
                    writer.WriteChars(ch, 0, ch.Length);
                    writer.WriteEndElement();
                    writer.WriteEndDocument();
                }
                OutputTextBlock.Text = output.ToString();

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.