IContentHandler.Characters(Char[], Int32, Int32) 方法

定义

接收字符数据的通知。

[Android.Runtime.Register("characters", "([CII)V", "GetCharacters_arrayCIIHandler:Org.Xml.Sax.IContentHandlerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public void Characters (char[]? ch, int start, int length);
[<Android.Runtime.Register("characters", "([CII)V", "GetCharacters_arrayCIIHandler:Org.Xml.Sax.IContentHandlerInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member Characters : char[] * int * int -> unit

参数

ch
Char[]

XML 文档中的字符

start
Int32

数组中的起始位置

length
Int32

要从数组读取的字符数

属性

例外

任何 SAX 异常,可能包装另一个异常

注解

接收字符数据的通知。

分析器将调用此方法来报告每个字符数据区块。 SAX 分析器可以返回单个区块中的所有连续字符数据,或者它们可能会将其拆分为多个区块;但是,任何单个事件中的所有字符都必须来自同一外部实体,以便定位符提供有用的信息。

应用程序不得尝试从指定范围之外的数组读取。

单个字符可能包含多个 Java char 值。 发生这种情况有两个重要情况,因为字符不能仅以 16 位表示。 在一种情况下,字符使用两个 <特殊的 Unicode 值在 em>代理项对</em> 中表示。 此类字符位于所谓的“星平面”中,其代码点高于 U+FFFF。 第二种情况涉及复合字符,例如与一个或多个重音字符组合的基字符。

代码不应假定使用 char-at-at-time 的算法将在字符单元中工作;在某些情况下,它们将拆分字符。 无论 XML 允许任意字符(如属性值、处理指令数据和注释,以及从此方法报告的数据中),这都是相关的。 每当 Java 代码操作国际化文本时,它通常也相关;此问题对 XML 并不是唯一的。

请注意,某些分析程序将使用该方法(验证分析程序 em 必须</em> 这样做)报告元素内容#ignorableWhitespace ignorableWhitespace中的>空格。<

适用于 . 的 org.xml.sax.ContentHandler.characters(char[], int, int)Java 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

适用于

另请参阅

  • <xref:Org.Xml.Sax.IContentHandler.IgnorableWhitespace(System.Char%5b%5d%2c+System.Int32%2c+System.Int32)>
  • ILocator