DecoderFallback DecoderFallback DecoderFallback DecoderFallback Class

정의

출력 문자로 변환할 수 없는 인코딩된 입력 바이트 시퀀스에 대해 대체(fallback)라고 하는 오류 처리 메커니즘을 제공합니다.Provides a failure-handling mechanism, called a fallback, for an encoded input byte sequence that cannot be converted to an output character.

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

설명

인코딩을 유니코드 문자를 인코딩된 바이트 시퀀스로 매핑됩니다.An encoding maps a Unicode character to an encoded sequence of bytes. 파생 된 형식으로 표시 되는 특정 인코딩을 Encoding 클래스입니다.A particular encoding is represented by a type that is derived from the Encoding class. 인코딩 형식을 호출 하 여 문자를 바이트 시퀀스로 인코딩된 특히 Encoding.GetBytes 메서드와 바이트 시퀀스를 문자 배열 또는 문자열을 호출 하 여 디코드 되는 Encoding.GetChars 또는 Encoding.GetString 메서드.Specifically, a character is encoded to a byte sequence by calling the encoding type's Encoding.GetBytes method, and the byte sequence is decoded to a character array or a string by calling the Encoding.GetChars or Encoding.GetString method.

디코딩 작업을 인코딩할 입력된 바이트 시퀀스를 매핑할 수 없는 경우에 실패할 수 있습니다.A decoding operation can fail if the input byte sequence cannot be mapped by the encoding. 예를 들어는 ASCIIEncoding 해당 시퀀스를 u+0000 ~ U + 007F 범위를 벗어난 코드 포인트 값이 있는 문자를 나타내는 경우 개체는 바이트 시퀀스를 디코딩할 수 없습니다.For example, an ASCIIEncoding object cannot decode a byte sequence if that sequence represents a character that has a code point value that is outside the range U+0000 to U+007F.

디코딩 변환을 수행할 수 없습니다, 하는 경우.NET Framework는 대체 (fallback) 라고 하는 오류 처리 메커니즘을 제공 합니다.When a decoding conversion cannot be performed, the .NET Framework provides a failure-handling mechanism called a fallback. 응용 프로그램 미리 정의 된.NET Framework 디코더 대체를 사용 하거나에서 파생 된 사용자 지정 디코더 대체 (fallback)를 만들 수는 DecoderFallbackDecoderFallbackBuffer 클래스입니다.Your application can use predefined .NET Framework decoder fallbacks, or it can create a custom decoder fallback derived from the DecoderFallback and DecoderFallbackBuffer classes.

DecoderFallbackDecoderFallbackBuffer 모두에 대 한 기본 클래스는.NET Framework의 대체 (fallback) 처리기 디코딩.DecoderFallback and DecoderFallbackBuffer are the base classes for all decoding fallback handlers in the .NET Framework. 다음과 같은 세 가지 메커니즘을 처리 하는 대체 (fallback) 지원:They support the following three kinds of fallback handling mechanisms:

  • 최적된 대체 (fallback) 대략적인 해당 하는 디코딩할 수 없는 유효한 유니코드 문자를 매핑하는 합니다.Best-fit fallback, which maps valid Unicode characters that cannot be decoded to an approximate equivalent. 예를 들어, 최적 대체 (fallback)에 대 한 처리기를 ASCIIEncoding 클래스 AE (u+0041 + U + 0045) → (U + 00 C 6) 매핑할 수 있습니다.For example, a best-fit fallback handler for the ASCIIEncoding class might map Æ (U+00C6) to AE (U+0041 + U+0045). 최적된 대체 (fallback) 처리기도 구현할 수 있습니다 (예: 키릴 자모) 알파벳 1 음 차를 간 (예: 라틴 또는 로마).A best-fit fallback handler might also be implemented to transliterate one alphabet (such as Cyrillic) to another (such as Latin or Roman). .NET Framework는 공용 최적된 대체 (fallback) 구현을 제공 하지 않습니다.The .NET Framework does not provide any public best-fit fallback implementations.

  • 미리 정의 된 문자열을 사용 하 여 교체 대체 (fallback)를 대체 문자를 디코딩할 수 없습니다.Replacement fallback, which replaces each character that cannot be decoded with a predefined string. .NET Framework는 미리 정의 된 교체 대체 (fallback) 처리기를 제공합니다.The .NET Framework provides a predefined replacement fallback handler. DecoderReplacementFallback 클래스 물음표 문자를 디코딩할 수 없는 각 바이트 시퀀스로 바꿉니다 ("?", 또는 U + 003F) 또는 REPLACEMENT CHARACTER (U + FFFD).The DecoderReplacementFallback class replaces each byte sequence that cannot be decoded with a question mark character ("?", or U+003F) or a REPLACEMENT CHARACTER (U+FFFD). 대체에 대 한 호출에서 지정 하 여 대체 문자열을 사용자 지정할 수 있습니다는 DecoderReplacementFallback.DecoderReplacementFallback(String) 생성자입니다.You can customize the replacement string by specifying a substitute in the call to the DecoderReplacementFallback.DecoderReplacementFallback(String) constructor. 대체 문자열을 내보낸 후 디코딩 작업은 변환 입력의 나머지 부분을 계속 합니다.After the substitute string is emitted, the decoding operation continues converting the remainder of the input.

  • 예외 대체 (fallback)를 바이트 시퀀스를 디코딩할 수 없는 경우 예외를 throw 합니다.Exception fallback, which throws an exception when a byte sequence cannot be decoded. .NET Framework는 미리 정의 된 예외 대체 (fallback) 처리기를 제공합니다.The .NET Framework provides a predefined exception fallback handler. 합니다 DecoderExceptionFallback throw 클래스는 DecoderFallbackException 때 잘못 된 바이트 시퀀스를 발생 하 고 디코딩 작업을 종료 합니다.The DecoderExceptionFallback class throws a DecoderFallbackException when an invalid byte sequence is encountered, and the decoding operation terminates.

추상 멤버를 재정의 해야 사용자 지정 솔루션을 구현 하려는 경우는 DecoderFallback 클래스:If you choose to implement a custom solution, you must override the following abstract members of the DecoderFallback class:

  • 합니다 CreateFallbackBuffer 에서 파생 된 클래스 인스턴스를 반환 하는 메서드 DecoderFallbackBuffer합니다.The CreateFallbackBuffer method, which returns a class instance derived from DecoderFallbackBuffer. 개발 중인 대체 (fallback) 처리기의 형식에 따라는 DecoderFallbackBuffer 구현은 매핑 또는 교체를 수행 하거나 예외를 throw 해야 합니다.Depending on the type of fallback handler that you are developing, the DecoderFallbackBuffer implementation is responsible for performing the mapping or replacement, or for throwing the exception.

  • MaxCharCount 대체 (fallback) 구현을 반환할 수 있는 문자의 최대 수를 반환 하는 속성입니다.The MaxCharCount property, which returns the maximum number of characters that the fallback implementation can return. 예외 대체 (fallback) 처리기를 해당 값은 0 이어야 합니다.For an exception fallback handler, its value should be zero.

인코딩, 디코딩 및 대체 (fallback) 전략에 대 한 자세한 내용은 참조 하세요. .NET Framework의 문자 인코딩합니다.For more information about encoding, decoding, and fallback strategies, see Character Encoding in the .NET Framework.

생성자

DecoderFallback() DecoderFallback() DecoderFallback() DecoderFallback()

DecoderFallback 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the DecoderFallback class.

속성

ExceptionFallback ExceptionFallback ExceptionFallback ExceptionFallback

입력 바이트 시퀀스를 디코딩할 수 없는 경우 예외를 throw하는 개체를 가져옵니다.Gets an object that throws an exception when an input byte sequence cannot be decoded.

MaxCharCount MaxCharCount MaxCharCount MaxCharCount

파생 클래스에서 재정의될 때 현재 DecoderFallback 개체가 반환할 수 있는 최대 문자 수를 가져옵니다.When overridden in a derived class, gets the maximum number of characters the current DecoderFallback object can return.

ReplacementFallback ReplacementFallback ReplacementFallback ReplacementFallback

디코딩할 수 없는 입력 바이트 시퀀스 대신 대체 문자열을 출력하는 개체를 가져옵니다.Gets an object that outputs a substitute string in place of an input byte sequence that cannot be decoded.

메서드

CreateFallbackBuffer() CreateFallbackBuffer() CreateFallbackBuffer() CreateFallbackBuffer()

파생 클래스에서 재정의된 경우 DecoderFallbackBuffer 클래스의 새 인스턴스를 초기화합니다.When overridden in a derived class, initializes a new instance of the DecoderFallbackBuffer class.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(Inherited from Object)

적용 대상

추가 정보