EncoderFallback EncoderFallback EncoderFallback EncoderFallback Class

Definición

Proporciona un mecanismo de control de errores, denominado reserva, para un carácter de entrada que no puede convertirse en una secuencia codificada de bytes de salida.Provides a failure-handling mechanism, called a fallback, for an input character that cannot be converted to an encoded output byte sequence.

public ref class EncoderFallback abstract
[System.Serializable]
public abstract class EncoderFallback
type EncoderFallback = class
Public MustInherit Class EncoderFallback
Herencia
EncoderFallbackEncoderFallbackEncoderFallbackEncoderFallback
Derivado
Atributos

Comentarios

Una codificación asigna un carácter Unicode en una secuencia de bytes codificada.An encoding maps a Unicode character to an encoded sequence of bytes. Una codificación determinada se representa mediante un tipo que se deriva el Encoding clase.A particular encoding is represented by a type that is derived from the Encoding class. En concreto, se codifica un carácter en una secuencia de bytes mediante una llamada al tipo de codificación Encoding.GetBytes método y la secuencia de bytes se descodifica en una matriz de caracteres o una cadena mediante una llamada a la Encoding.GetChars o Encoding.GetString método.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.

Una operación de codificación puede producir un error si el carácter de entrada no puede representarse mediante la codificación.An encoding operation can fail if the input character cannot be represented by the encoding. Por ejemplo, un ASCIIEncoding objeto no puede codificar un carácter cuyo valor de punto de código Unicode está fuera del intervalo de u+0000 a 007F U +.For example, an ASCIIEncoding object cannot encode a character whose Unicode code point value is outside the range U+0000 to U+007F.

Cuando no se puede realizar una conversión de codificación, .NET Framework proporciona un mecanismo de control de errores, denominado reserva.When an encoding conversion cannot be performed, the .NET Framework provides a failure-handling mechanism called a fallback. La aplicación puede usar reservas predefinidas del codificador de .NET Framework o puede crear un reserva de codificador personalizado derivado de la EncoderFallback y EncoderFallbackBuffer clases.Your application can use predefined .NET Framework encoder fallbacks, or it can create a custom encoder fallback derived from the EncoderFallback and EncoderFallbackBuffer classes.

EncoderFallback y EncoderFallbackBuffer va a codificar las clases base para todos los controladores de reserva en .NET Framework.EncoderFallback and EncoderFallbackBuffer are the base classes for all encoding fallback handlers in the .NET Framework. Admiten los siguientes tres tipos de mecanismos de control de reserva:They support the following three kinds of fallback handling mechanisms:

  • Reserva con ajuste perfecto, que asigna caracteres Unicode válidos que no se puede codificar a un equivalente aproximado.Best-fit fallback, which maps valid Unicode characters that cannot be encoded to an approximate equivalent. Por ejemplo, un controlador de reserva con ajuste perfecto para el ASCIIEncoding clase puede asignarse Æ (U + 00 C 6) a AE (u+0041 + u+0045).For example, a best-fit fallback handler for the ASCIIEncoding class might map Æ (U+00C6) to AE (U+0041 + U+0045). Un controlador de reserva con ajuste perfecto es posible que también implementarse para transcribir un alfabeto (como el cirílico) a otro (por ejemplo, latino o romano).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 no proporciona ninguna implementación de reserva con ajuste perfecto pública.The .NET Framework does not provide any public best-fit fallback implementations.

  • Reserva de reemplazo que reemplaza cada carácter que no se puede codificar con una cadena predefinida.Replacement fallback, which replaces each character that cannot be encoded with a predefined string. .NET Framework proporciona un controlador de reserva de reemplazo predefinidos.The .NET Framework provides a predefined replacement fallback handler. La EncoderReplacementFallback clase reemplaza cada secuencia de bytes que no se puede descodificar con un carácter de signo de interrogación ("?", o 003F U +) o un carácter de reemplazo (U+FFFD).The EncoderReplacementFallback class replaces each byte sequence that cannot be decoded with a question mark character ("?", or U+003F) or a REPLACEMENT CHARACTER (U+FFFD). Puede personalizar la cadena de reemplazo mediante la especificación de un sustituto de la llamada a la EncoderReplacementFallback.EncoderReplacementFallback(String) constructor.You can customize the replacement string by specifying a substitute in the call to the EncoderReplacementFallback.EncoderReplacementFallback(String) constructor. Una vez que se genera la cadena de sustitución, la operación de codificación prosigue con el resto de la entrada.After the substitute string is emitted, the encoding operation continues converting the remainder of the input.

  • Reserva de excepción, lo que produce una excepción cuando no se puede codificar un carácter.Exception fallback, which throws an exception when a character cannot be encoded. .NET Framework proporciona un controlador de reserva de excepción predefinidos.The .NET Framework provides a predefined exception fallback handler. El EncoderExceptionFallback clase produce una EncoderFallbackException cuando se encuentra un carácter no válido, y finaliza la operación de codificación.The EncoderExceptionFallback class throws an EncoderFallbackException when an invalid character is encountered, and the encoding operation terminates.

Si decide implementar una solución personalizada, debe invalidar los siguientes miembros abstractos de la EncoderFallback clase:If you choose to implement a custom solution, you must override the following abstract members of the EncoderFallback class:

  • El CreateFallbackBuffer método, que devuelve una instancia de la clase derivada de EncoderFallbackBuffer.The CreateFallbackBuffer method, which returns a class instance derived from EncoderFallbackBuffer. Según el tipo de controlador de reserva que se está desarrollando, la EncoderFallbackBuffer implementación es responsable para realizar la asignación o sustitución, o para iniciar la excepción.Depending on the type of fallback handler that you are developing, the EncoderFallbackBuffer implementation is responsible for performing the mapping or replacement, or for throwing the exception.

  • El MaxCharCount propiedad, que devuelve el número máximo de caracteres que puede devolver la implementación de reserva.The MaxCharCount property, which returns the maximum number of characters that the fallback implementation can return. Para un controlador de reserva de excepción, su valor debe ser cero.For an exception fallback handler, its value should be zero.

Para obtener más información acerca de las estrategias de reserva, descodificación y codificación, consulte codificación de caracteres en .NET Framework.For more information about encoding, decoding, and fallback strategies, see Character Encoding in the .NET Framework.

Constructores

EncoderFallback() EncoderFallback() EncoderFallback() EncoderFallback()

Inicializa una nueva instancia de la clase EncoderFallback.Initializes a new instance of the EncoderFallback class.

Propiedades

ExceptionFallback ExceptionFallback ExceptionFallback ExceptionFallback

Obtiene un objeto que produce una excepción cuando no se puede codificar un carácter de entrada.Gets an object that throws an exception when an input character cannot be encoded.

MaxCharCount MaxCharCount MaxCharCount MaxCharCount

Cuando se invalida en una clase derivada, obtiene el número máximo de caracteres que puede devolver el objeto EncoderFallback actual.When overridden in a derived class, gets the maximum number of characters the current EncoderFallback object can return.

ReplacementFallback ReplacementFallback ReplacementFallback ReplacementFallback

Obtiene un objeto que genera una cadena de sustitución de un carácter de entrada que no se puede codificar.Gets an object that outputs a substitute string in place of an input character that cannot be encoded.

Métodos

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

Cuando se reemplaza en una clase derivada, inicializa una nueva instancia de la clase EncoderFallbackBuffer.When overridden in a derived class, initializes a new instance of the EncoderFallbackBuffer class.

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

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

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

Sirve como la función hash predeterminada.Serves as the default hash function.

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

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

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

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

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

Devuelve una cadena que representa el objeto actual.Returns a string that represents the current object.

(Inherited from Object)

Se aplica a

Consulte también: