IContentHandler.Characters(Char[], Int32, Int32) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
接收字符数据的通知。
[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