IDataInput.ReadUTF 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
수정된 UTF-8 형식을 사용하여 인코딩된 문자열을 읽습니다.
[Android.Runtime.Register("readUTF", "()Ljava/lang/String;", "GetReadUTFHandler:Java.IO.IDataInputInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public string? ReadUTF ();
[<Android.Runtime.Register("readUTF", "()Ljava/lang/String;", "GetReadUTFHandler:Java.IO.IDataInputInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member ReadUTF : unit -> string
반환
유니코드 문자열입니다.
- 특성
예외
읽기 요청을 충족하기 전에 입력의 끝에 도달하면
읽는 동안 I/O 오류가 발생하는 경우
설명
수정된 UTF-8 형식을 사용하여 인코딩된 문자열을 읽습니다. 일반적인 계약은 readUTF
수정된 UTF-8 형식으로 인코딩된 유니코드 문자열의 표현을 읽는 것입니다. 그런 다음, 이 문자 문자열은 .로 String
반환됩니다.
먼저 두 바이트를 읽고 메서드의 방식으로 readUnsignedShort
부호 없는 16비트 정수 생성에 사용됩니다. 이 정수 값을 UTF 길이라고 하며 읽을 추가 바이트 수를 지정합니다. 그런 다음 이러한 바이트는 그룹에서 고려하여 문자로 변환됩니다. 각 그룹의 길이는 그룹의 첫 번째 바이트 값에서 계산됩니다. 그룹 뒤의 바이트(있는 경우)는 다음 그룹의 첫 번째 바이트입니다.
그룹의 첫 번째 바이트가 비트 패턴 0xxxxxxx
(" x
may 0
또는 1
")을 의미하는 경우 그룹은 해당 바이트만으로 구성됩니다. 바이트는 문자를 형성하기 위해 0 확장됩니다.
그룹의 첫 번째 바이트가 비트 패턴 110xxxxx
과 일치하는 경우 그룹은 해당 바이트와 a
두 번째 바이트 b
로 구성됩니다. 바이트가 b
없거나(바이트가 a
읽을 바이트의 마지막 바이트이기 때문에) 바이트가 b
비트 패턴 10xxxxxx
과 일치하지 않으면 throw UTFDataFormatException
됩니다. 그렇지 않으면 그룹이 문자로 변환됩니다.
{@code (char)(((a & 0x1F) << 6) | (b & 0x3F))
}
그룹의 첫 번째 바이트가 비트 패턴 1110xxxx
과 일치하는 경우 그룹은 해당 바이트 a
및 2바이트 및 2바이트로 b
c
구성됩니다. 바이트가 c
없거나(바이트가 a
읽을 마지막 두 바이트 중 하나이기 때문에) 바이트 또는 바이트가 b
c
비트 패턴 10xxxxxx
과 일치하지 않으면 throw UTFDataFormatException
됩니다. 그렇지 않으면 그룹이 문자로 변환됩니다.
{@code
(char)(((a & 0x0F) << 12) | ((b & 0x3F) << 6) | (c & 0x3F))
}
그룹의 첫 번째 바이트가 패턴 또는 패턴 1111xxxx
10xxxxxx
과 일치하면 a가 UTFDataFormatException
throw됩니다.
이 전체 프로세스 EOFException
중에 언제든지 파일의 끝이 발견되면 파일이 throw됩니다.
이 프로세스에서 모든 그룹을 문자로 변환한 후에는 해당 그룹이 입력 스트림에서 읽은 순서와 동일한 순서로 문자가 수집되어 반환되는 문자를 형성 String
합니다.
인터페이스 DataOutput
메서드를 writeUTF
사용하여 이 메서드에서 읽기에 적합한 데이터를 작성할 수 있습니다.
에 대한 java.io.DataInput.readUTF()
Java 설명서
이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.