EncoderFallbackBuffer EncoderFallbackBuffer EncoderFallbackBuffer EncoderFallbackBuffer Class

Definición

Proporciona un búfer que permite a un controlador de retroceso devolver una cadena alternativa a un codificador cuando no puede codificar un carácter de entrada.Provides a buffer that allows a fallback handler to return an alternate string to an encoder when it cannot encode an input character.

public ref class EncoderFallbackBuffer abstract
public abstract class EncoderFallbackBuffer
type EncoderFallbackBuffer = class
Public MustInherit Class EncoderFallbackBuffer
Herencia
EncoderFallbackBufferEncoderFallbackBufferEncoderFallbackBufferEncoderFallbackBuffer
Derivado

Comentarios

Una codificación define una asignación entre un carácter Unicode y una secuencia de bytes codificada.An encoding defines a mapping between a Unicode character and an encoded sequence of bytes. Se produce un error en una operación de codificación, que convierte un carácter de entrada en una secuencia de bytes de salida, si no se define ninguna asignación para un determinado carácter.An encoding operation, which converts an input character to an output byte sequence, fails if no mapping is defined for a particular character.

.NET Framework proporciona un mecanismo, denominado reserva, si no se puede realizar una conversión de control de errores.The .NET Framework provides a failure handling mechanism, called a fallback, if a conversion cannot be performed. Todos los controladores de reserva de codificador deben implementar lo siguiente:All encoder fallback handlers must implement the following:

  • Un codificador de reserva, que se representa mediante una clase derivada de la EncoderFallback clase.An encoder fallback, which is represented by a class derived from the EncoderFallback class.

  • Un búfer de reserva del codificador, que viene representado por un tipo derivado de la EncoderFallbackBuffer clase que puede devolver una cadena a la operación de conversión.An encoder fallback buffer, which is represented by a type derived from the EncoderFallbackBuffer class that can return a string to the conversion operation.

Reservas pueden usar tres estrategias para controlar los errores de conversión:Fallbacks can use three strategies to handle conversion failures:

  • Asignación con ajuste perfecto.Best-fit mapping. El búfer de reserva de codificador puede devolver una cadena que representa una buena aproximación al carácter de entrada.The encoder fallback buffer can return a string that represents a close approximation to the input character. .NET Framework no proporciona un público con ajuste perfecto EncoderFallbackBuffer implementación.The .NET Framework does not provide a public best-fit EncoderFallbackBuffer implementation.

  • Sustitución.Replacement. El búfer de reserva de codificador puede devolver una cadena, como un signo de interrogación ("?"), que indica que no se pudo codificar un carácter.The encoder fallback buffer can return a string, such as a question mark ("?"), that indicates that a character could not be encoded. En .NET Framework, el EncoderReplacementFallback y EncoderReplacementFallbackBuffer clases proporcionan una implementación de búfer de reserva de reemplazo pública.In the .NET Framework, the EncoderReplacementFallback and EncoderReplacementFallbackBuffer classes provide a public replacement fallback buffer implementation. El constructor de la EncoderReplacementFallback clase le permite definir la cadena de reemplazo.The constructor of the EncoderReplacementFallback class enables you to define the replacement string.

  • Excepción.Exception. El EncoderFallbackBuffer implementación produce una excepción, lo que indica que no se puede codificar un carácter y finaliza la operación de codificación.The EncoderFallbackBuffer implementation throws an exception, which indicates that a character cannot be encoded, and terminates the encoding operation. En este caso, debe proporcionar el controlador de reserva un EncoderFallbackBuffer implementación, aunque no se devuelve una cadena para el codificador.In this case, the fallback handler must provide an EncoderFallbackBuffer implementation, although it does not return a string to the encoder. En .NET Framework, el EncoderExceptionFallback y EncoderExceptionFallbackBuffer clases proporcionan una implementación de reserva de excepción pública que se produce un EncoderFallbackException cuando no se puede codificar un carácter.In the .NET Framework, the EncoderExceptionFallback and EncoderExceptionFallbackBuffer classes provide a public exception fallback implementation that throws an EncoderFallbackException when a character cannot be encoded.

El búfer en un EncoderFallbackBuffer implementación representa toda la cadena que se devuelve al codificador en respuesta a un codificador de reserva.The buffer in an EncoderFallbackBuffer implementation represents the entire string to be returned to the encoder in response to an encoder fallback. Por lo general, las implementaciones también incluyen información de estado, como el índice del carácter siguiente para devolver el codificador y el número de caracteres restantes va a devolver.Generally, implementations also include state information, such as the index of the next character to return to the encoder and the number of remaining characters to be returned. Dado que EncoderFallbackBuffer es una clase abstracta, requiere que las clases derivadas para implementar los miembros siguientes como mínimo:Because EncoderFallbackBuffer is an abstract class, it requires derived classes to implement the following members at a minimum:

  • Sobrecargado Fallback método, que es invocado por el codificador cuando no se puede codificar un carácter.The overloaded Fallback method, which is called by the encoder when it cannot encode a character. El codificador pasa dos fragmentos de información a la implementación de búfer de reserva: el carácter o par suplente que no se pudo codificar y el índice del carácter en la entrada.The encoder passes two pieces of information to the fallback buffer implementation: the character or surrogate pair that could not be encoded and the index of the character in the input. En un controlador de excepciones de reserva de codificador, se produce la excepción en este método.In an encoder fallback exception handler, the exception is thrown in this method. En caso contrario, devuelve el método true si proporciona una reserva, o false si no es así.Otherwise, the method returns true if it provides a fallback, or false if it does not.

  • El GetNextChar método, que se llama repetidamente el codificador si el Fallback devuelve del método true.The GetNextChar method, which is called repeatedly by the encoder if the Fallback method returns true. En las sucesivas llamadas, el controlador debe devolver cada carácter en su búfer.In successive calls, the handler should return each character in its buffer. Cuando haya devuelto todos los caracteres, debe devolver u+0000.When it has returned all characters, it should return U+0000. Un controlador de excepciones siempre devuelve u+0000.An exception handler always returns U+0000.

  • El MovePrevious método, que intenta mover el puntero a la posición anterior en el búfer y que indica si el movimiento se realizó correctamente.The MovePrevious method, which tries to move the pointer to the previous position in the buffer and indicates whether the move was successful. Siempre devuelve un controlador de excepciones false.An exception handler always returns false.

  • El Remaining propiedad, que indica el número de caracteres restantes que se devuelven al codificador.The Remaining property, which indicates the number of remaining characters to be returned to the encoder. Un controlador de reserva de excepción siempre devuelve cero.An exception fallback handler always returns zero.

Constructores

EncoderFallbackBuffer() EncoderFallbackBuffer() EncoderFallbackBuffer() EncoderFallbackBuffer()

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

Propiedades

Remaining Remaining Remaining Remaining

Cuando se invalida en una clase derivada, obtiene el número de caracteres del objeto EncoderFallbackBuffer actual que están pendientes de ser procesados.When overridden in a derived class, gets the number of characters in the current EncoderFallbackBuffer object that remain to be processed.

Métodos

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)
Fallback(Char, Char, Int32) Fallback(Char, Char, Int32) Fallback(Char, Char, Int32) Fallback(Char, Char, Int32)

Cuando se invalida en una clase derivada, prepara el búfer de reserva para controlar el par suplente especificado.When overridden in a derived class, prepares the fallback buffer to handle the specified surrogate pair.

Fallback(Char, Int32) Fallback(Char, Int32) Fallback(Char, Int32) Fallback(Char, Int32)

Cuando se invalida en una clase derivada, prepara el búfer de reserva para controlar el carácter de entrada especificado.When overridden in a derived class, prepares the fallback buffer to handle the specified input character.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

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

(Inherited from Object)
GetNextChar() GetNextChar() GetNextChar() GetNextChar()

Cuando se invalida en una clase derivada, recupera el carácter siguiente en el búfer de reserva.When overridden in a derived class, retrieves the next character in the fallback buffer.

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 objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
MovePrevious() MovePrevious() MovePrevious() MovePrevious()

Cuando se invalida en una clase derivada, realiza la siguiente llamada al método GetNextChar() para obtener acceso a la posición del carácter del búfer de datos situada antes de la posición del carácter actual.When overridden in a derived class, causes the next call to the GetNextChar() method to access the data buffer character position that is prior to the current character position.

Reset() Reset() Reset() Reset()

Inicializa todos los datos y la información de estado relacionados con este búfer de reserva.Initializes all data and state information pertaining to this fallback buffer.

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: