다음을 통해 공유


DecoderFallback 클래스

정의

출력 문자로 변환할 수 없는 인코딩된 입력 바이트 시퀀스에 대해 대체(fallback)라고 하는 오류 처리 메커니즘을 제공합니다.

public ref class DecoderFallback abstract
public abstract class DecoderFallback
[System.Serializable]
public abstract class DecoderFallback
type DecoderFallback = class
[<System.Serializable>]
type DecoderFallback = class
Public MustInherit Class DecoderFallback
상속
DecoderFallback
파생
특성

설명

인코딩을 유니코드 문자를 인코딩된 바이트 시퀀스로 매핑됩니다. 파생 된 형식으로 표시 되는 특정 인코딩을 Encoding 클래스입니다. 인코딩 형식을 호출 하 여 문자를 바이트 시퀀스로 인코딩된 특히 Encoding.GetBytes 메서드와 바이트 시퀀스를 문자 배열 또는 문자열을 호출 하 여 디코드 되는 Encoding.GetChars 또는 Encoding.GetString 메서드.

인코딩을 통해 입력 바이트 시퀀스를 매핑할 수 없는 경우 디코딩 작업이 실패할 수 있습니다. 예를 들어 해당 ASCIIEncoding 시퀀스가 U+0000에서 U+007F 범위 밖에 있는 코드 포인트 값이 있는 문자를 나타내는 경우 개체는 바이트 시퀀스를 디코딩할 수 없습니다.

디코딩 변환을 수행할 수 없는 경우 .NET Framework 대체(fallback)라는 오류 처리 메커니즘을 제공합니다. 애플리케이션 미리 정의 된.NET Framework 디코더 대체를 사용 하거나에서 파생 된 사용자 지정 디코더 대체 (fallback)를 만들 수는 DecoderFallbackDecoderFallbackBuffer 클래스입니다.

DecoderFallbackDecoderFallbackBuffer .NET Framework 모든 디코딩 대체 처리기의 기본 클래스입니다. 다음과 같은 세 가지 메커니즘을 처리 하는 대체 (fallback) 지원:

  • 대략적인 값으로 디코딩할 수 없는 유효한 유니코드 문자를 매핑하는 가장 적합한 대체입니다. 예를 들어, 최적 대체 (fallback)에 대 한 처리기를 ASCIIEncoding 클래스 AE (u+0041 + U + 0045) → (U + 00 C 6) 매핑할 수 있습니다. 최적된 대체 (fallback) 처리기도 구현할 수 있습니다 (예: 키릴 자모) 알파벳 1 음 차를 간 (예: 라틴 또는 로마). .NET Framework는 공용 최적된 대체 (fallback) 구현을 제공 하지 않습니다.

  • 미리 정의된 문자열로 디코딩할 수 없는 각 문자를 대체하는 대체 대체입니다. .NET Framework는 미리 정의 된 교체 대체 (fallback) 처리기를 제공합니다. DecoderReplacementFallback 클래스 물음표 문자를 디코딩할 수 없는 각 바이트 시퀀스로 바꿉니다 ("?", 또는 U + 003F) 또는 REPLACEMENT CHARACTER (U + FFFD). 대체에 대 한 호출에서 지정 하 여 대체 문자열을 사용자 지정할 수 있습니다는 DecoderReplacementFallback.DecoderReplacementFallback(String) 생성자입니다. 대체 문자열을 내보낸 후 디코딩 작업은 입력의 나머지 부분을 계속 변환합니다.

  • 바이트 시퀀스를 디코딩할 수 없는 경우 예외를 throw하는 예외 대체입니다. .NET Framework는 미리 정의 된 예외 대체 (fallback) 처리기를 제공합니다. DecoderExceptionFallback 잘못된 바이트 시퀀스가 발견되고 디코딩 작업이 종료되면 클래스가 throw DecoderFallbackException 됩니다.

추상 멤버를 재정의 해야 사용자 지정 솔루션을 구현 하려는 경우는 DecoderFallback 클래스:

  • 합니다 CreateFallbackBuffer 에서 파생 된 클래스 인스턴스를 반환 하는 메서드 DecoderFallbackBuffer합니다. 개발 중인 대체 (fallback) 처리기의 형식에 따라는 DecoderFallbackBuffer 구현은 매핑 또는 교체를 수행 하거나 예외를 throw 해야 합니다.

  • MaxCharCount 대체 (fallback) 구현을 반환할 수 있는 문자의 최대 수를 반환 하는 속성입니다. 예외 대체 (fallback) 처리기를 해당 값은 0 이어야 합니다.

인코딩, 디코딩 및 대체 (fallback) 전략에 대 한 자세한 내용은 참조 하세요. .NET Framework의 문자 인코딩합니다.

생성자

DecoderFallback()

DecoderFallback 클래스의 새 인스턴스를 초기화합니다.

속성

ExceptionFallback

입력 바이트 시퀀스를 디코딩할 수 없는 경우 예외를 throw하는 개체를 가져옵니다.

MaxCharCount

파생 클래스에서 재정의될 때 현재 DecoderFallback 개체가 반환할 수 있는 최대 문자 수를 가져옵니다.

ReplacementFallback

디코딩할 수 없는 입력 바이트 시퀀스 대신 대체 문자열을 출력하는 개체를 가져옵니다.

메서드

CreateFallbackBuffer()

파생 클래스에서 재정의된 경우 DecoderFallbackBuffer 클래스의 새 인스턴스를 초기화합니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

적용 대상

추가 정보