XmlWriter.WriteChars(Char[], Int32, Int32) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
When overridden in a derived class, writes text one buffer at a time.
public:
abstract void WriteChars(cli::array <char> ^ buffer, int index, int count);
public abstract void WriteChars (char[] buffer, int index, int count);
abstract member WriteChars : char[] * int * int -> unit
Public MustOverride Sub WriteChars (buffer As Char(), index As Integer, count As Integer)
Parameters
- buffer
- Char[]
Character array containing the text to write.
- index
- Int32
The position in the buffer indicating the start of the text to write.
- count
- Int32
The number of characters to write.
Exceptions
buffer
is null
.
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.
The buffer
parameter value is not valid.
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."
Examples
using (XmlWriter writer = XmlWriter.Create("WriteChars.xml"))
{
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();
}
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.
For the asynchronous version of this method, see WriteCharsAsync.
Applies to
.NET