EncoderFallback Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.
public ref class EncoderFallback abstract
public abstract class EncoderFallback
[System.Serializable]
public abstract class EncoderFallback
type EncoderFallback = class
[<System.Serializable>]
type EncoderFallback = class
Public MustInherit Class EncoderFallback
- Herencia
-
EncoderFallback
- Derivado
- Atributos
Comentarios
Una codificación asigna un carácter Unicode a una secuencia de bytes codificada. Una codificación determinada se representa mediante un tipo derivado de la Encoding clase . En concreto, un carácter se codifica en una secuencia de bytes llamando al método del Encoding.GetBytes tipo de codificación y la secuencia de bytes se descodifica en una matriz de caracteres o una cadena llamando al Encoding.GetChars método o Encoding.GetString .
Se puede producir un error en una operación de codificación si el carácter de entrada no se puede representar mediante la codificación. Por ejemplo, un ASCIIEncoding objeto no puede codificar un carácter cuyo valor de punto de código Unicode esté fuera del intervalo U+0000 a U+007F.
Cuando no se puede realizar una conversión de codificación, el .NET Framework proporciona un mecanismo de control de errores denominado reserva. La aplicación puede usar las reservas predefinidas .NET Framework codificador, o bien puede crear una reserva de codificador personalizada derivada de las EncoderFallback clases y EncoderFallbackBuffer .
EncoderFallbacky EncoderFallbackBuffer son las clases base para todos los controladores de reserva de codificación de la .NET Framework. Admiten los tres tipos siguientes de mecanismos de control de reserva:
Reserva más adecuada, que asigna caracteres Unicode válidos que no se pueden codificar a un equivalente aproximado. Por ejemplo, un controlador de reserva adecuado para la ASCIIEncoding clase podría asignar Æ (U+00C6) a AE (U+0041 + U+0045). Un controlador de reserva más adecuado también se puede implementar para transliterar un alfabeto (como cirílico) a otro (como latino o romano). El .NET Framework no proporciona ninguna implementación de reserva más adecuada para el público.
Reserva de reemplazo, que reemplaza cada carácter que no se puede codificar con una cadena predefinida. El .NET Framework proporciona un controlador de reserva de reemplazo predefinido. La EncoderReplacementFallback clase reemplaza cada secuencia de bytes que no se puede descodificar por un carácter de signo de interrogación ("?", u U+003F) o un CARÁCTER DE REEMPLAZO (U+FFFD). Puede personalizar la cadena de reemplazo especificando un sustituto en la llamada al EncoderReplacementFallback.EncoderReplacementFallback(String) constructor. Una vez emitida la cadena de sustitución, la operación de codificación continúa convirtiendo el resto de la entrada.
Reserva de excepciones, que produce una excepción cuando no se puede codificar un carácter. El .NET Framework proporciona un controlador de reserva de excepciones predefinido. La EncoderExceptionFallback clase produce un EncoderFallbackException cuando se encuentra un carácter no válido y finaliza la operación de codificación.
Si decide implementar una solución personalizada, debe invalidar los siguientes miembros abstractos de la EncoderFallback clase :
El CreateFallbackBuffer método , que devuelve una instancia de clase derivada de EncoderFallbackBuffer. Dependiendo del tipo de controlador de reserva que esté desarrollando, la EncoderFallbackBuffer implementación es responsable de realizar la asignación o el reemplazo, o para iniciar la excepción.
La MaxCharCount propiedad , que devuelve el número máximo de caracteres que puede devolver la implementación de reserva. Para un controlador de reserva de excepciones, su valor debe ser cero.
Para obtener más información sobre las estrategias de codificación, descodificación y reserva, vea Codificación de caracteres en la .NET Framework.
Constructores
EncoderFallback() |
Inicializa una nueva instancia de la clase EncoderFallback. |
Propiedades
ExceptionFallback |
Obtiene un objeto que produce una excepción cuando no se puede codificar un carácter de entrada. |
MaxCharCount |
Cuando se invalida en una clase derivada, obtiene el número máximo de caracteres que puede devolver el objeto EncoderFallback actual. |
ReplacementFallback |
Obtiene un objeto que genera una cadena de sustitución de un carácter de entrada que no se puede codificar. |
Métodos
CreateFallbackBuffer() |
Cuando se reemplaza en una clase derivada, inicializa una nueva instancia de la clase EncoderFallbackBuffer. |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |