<p>The Parser will call this method to report each chunk of
character data. SAX parsers may return all contiguous character
data in a single chunk, or they may split it into several
chunks; however, all of the characters in any single event
must come from the same external entity so that the Locator
provides useful information.</p>
<p>The application must not attempt to read from the array
outside of the specified range.</p>
<p>Individual characters may consist of more than one Java
<code>char</code> value. There are two important cases where this
happens, because characters can't be represented in just sixteen bits.
In one case, characters are represented in a <em>Surrogate Pair</em>,
using two special Unicode values. Such characters are in the so-called
"Astral Planes", with a code point above U+FFFF. A second case involves
composite characters, such as a base character combining with one or
more accent characters. </p>
<p> Your code should not assume that algorithms using
<code>char</code>-at-a-time idioms will be working in character
units; in some cases they will split characters. This is relevant
wherever XML permits arbitrary characters, such as attribute values,
processing instruction data, and comments as well as in data reported
from this method. It's also generally relevant whenever Java code
manipulates internationalized text; the issue isn't unique to XML.</p>
<p>Note that some parsers will report whitespace in element
content using the {@link #ignorableWhitespace ignorableWhitespace}
method rather than this one (validating parsers <em>must</em>
do so).</p>
@param ch the characters from the XML document
@param start the start position in the array
@param length the number of characters to read from the array
@throws org.xml.sax.SAXException any SAX exception, possibly
wrapping another exception
@see #ignorableWhitespace
@see org.xml.sax.Locator
Receive notification of character data.
<p>The Parser will call this method to report each chunk of character data. SAX parsers may return all contiguous character data in a single chunk, or they may split it into several chunks; however, all of the characters in any single event must come from the same external entity so that the Locator provides useful information.</p>
<p>The application must not attempt to read from the array outside of the specified range.</p>
<p>Individual characters may consist of more than one Java <code>char</code> value. There are two important cases where this happens, because characters can't be represented in just sixteen bits. In one case, characters are represented in a <em>Surrogate Pair</em>, using two special Unicode values. Such characters are in the so-called "Astral Planes", with a code point above U+FFFF. A second case involves composite characters, such as a base character combining with one or more accent characters. </p>
<p> Your code should not assume that algorithms using <code>char</code>-at-a-time idioms will be working in character units; in some cases they will split characters. This is relevant wherever XML permits arbitrary characters, such as attribute values, processing instruction data, and comments as well as in data reported from this method. It's also generally relevant whenever Java code manipulates internationalized text; the issue isn't unique to XML.</p>
<p>Note that some parsers will report whitespace in element content using the {@link #ignorableWhitespace ignorableWhitespace} method rather than this one (validating parsers <em>must</em> do so).</p>
@param ch the characters from the XML document @param start the start position in the array @param length the number of characters to read from the array @throws org.xml.sax.SAXException any SAX exception, possibly wrapping another exception @see #ignorableWhitespace @see org.xml.sax.Locator