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비트로 나타낼 수 없으므로 이 문제가 발생하는 두 가지 중요한 경우가 있습니다. 한 경우 문자는 두 개의 특수 유니코드 값을 사용하여 em>서로게이트 쌍</em>으로 표시됩니다<. 이러한 문자는 U+FFFF 위의 코드 포인트와 함께 소위 "아스트랄 평면"에 있습니다. 두 번째 사례에는 하나 이상의 악센트 문자와 결합하는 기본 문자와 같은 복합 문자가 포함됩니다.
코드는 -at-a-Time 관용구를 사용하는 char
알고리즘이 문자 단위에서 작동한다고 가정해서는 안 됩니다. 경우에 따라 문자가 분할됩니다. XML에서 특성 값, 처리 명령 데이터 및 주석과 같은 임의의 문자와 이 메서드에서 보고된 데이터를 허용하는 모든 경우에 관련이 있습니다. 또한 Java 코드가 국제화된 텍스트를 조작할 때마다 일반적으로 관련이 있습니다. 문제는 XML에 고유하지 않습니다.
일부 파서는 이 메서드가 아닌 메서드를 사용하여 #ignorableWhitespace ignorableWhitespace
요소 콘텐츠의 공백을 보고합니다(구문 분석기의 <>유효성을 검사해야 함</em>).
에 대한 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