Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

XmlTextWriter::WriteChars Method (array<Char>^, Int32, Int32)

 

Writes text one buffer at a time.

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

public:
virtual void WriteChars(
	array<wchar_t>^ buffer,
	int index,
	int count
) override

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.

Exception Condition
ArgumentNullException

buffer is null.

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.

InvalidOperationException

The WriteState is Closed.

System_CAPS_noteNote

Starting with the .NET Framework 2.0, we recommend that you create XmlWriter instances by using the XmlWriter::Create method and the XmlWriterSettings class to take advantage of new functionality.

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.

using (XmlTextWriter writer = new XmlTextWriter(Console.Out))
{
    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();
}

.NET Framework
Available since 1.1
Return to top
Show:
© 2017 Microsoft