This topic has not yet been rated - Rate this topic

XmlTextWriter.WriteChars Method

Writes text one buffer at a time.

Namespace:  System.Xml
Assembly:  System.Xml (in System.Xml.dll)
public override void WriteChars(
	char[] buffer,
	int index,
	int count
)

Parameters

buffer
Type: 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.

Note Note

In the .NET Framework version 2.0 release, the recommended practice is to create XmlWriter instances using the XmlWriter.Create method and the XmlWriterSettings class. This allows you to take full advantage of all the new features introduced in this release. For more information, see Creating XML Writers.

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

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ