Compartilhar via


IContentHandler.Characters(Char[], Int32, Int32) Método

Definição

Receba notificação de dados de caracteres.

[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

Parâmetros

ch
Char[]

os caracteres do documento XML

start
Int32

A posição inicial na matriz

length
Int32

o número de caracteres a serem lidos da matriz

Atributos

Exceções

qualquer exceção SAX, possivelmente envolvendo outra exceção

Comentários

Receba notificação de dados de caracteres.

O analisador chamará esse método para relatar cada bloco de dados de caracteres. Os analisadores SAX podem retornar todos os dados de caracteres contíguos em um único bloco ou podem dividi-los em vários blocos; no entanto, todos os caracteres em qualquer evento único devem vir da mesma entidade externa para que o localizador forneça informações úteis.

O aplicativo não deve tentar ler da matriz fora do intervalo especificado.

Caracteres individuais podem consistir em mais de um valor Java char . Há dois casos importantes em que isso acontece, porque os personagens não podem ser representados em apenas dezesseis bits. Em um caso, os caracteres são representados em um <par>< substituto/em>, usando dois valores Unicode especiais. Tais personagens estão nos chamados "Planos Astrais", com um ponto de código acima de U+FFFF. Um segundo caso envolve caracteres compostos, como um caractere base combinando com um ou mais caracteres de acento.

Seu código não deve assumir que algoritmos usando charexpressões idiomáticas -at-a-time estarão funcionando em unidades de caracteres, em alguns casos eles dividirão caracteres. Isso é relevante sempre que o XML permite caracteres arbitrários, como valores de atributo, processamento de dados de instrução e comentários, bem como em dados relatados a partir desse método. Também é geralmente relevante sempre que o código Java manipula texto internacionalizado; o problema não é exclusivo do XML.

Observe que alguns analisadores relatarão espaço em branco no conteúdo do elemento usando o #ignorableWhitespace ignorableWhitespace método em vez deste (validando analisadores <em>must</em> fazer isso).

Documentação Java para org.xml.sax.ContentHandler.characters(char[], int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Aplica-se a

Confira também

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