DecoderFallbackBuffer DecoderFallbackBuffer DecoderFallbackBuffer DecoderFallbackBuffer Class

Definição

Fornece um buffer que permite que um manipulador de fallback retorne uma cadeia de caracteres alternativa para um decodificador quando ele não é capaz de decodificar uma sequência de bytes de entrada.Provides a buffer that allows a fallback handler to return an alternate string to a decoder when it cannot decode an input byte sequence.

public ref class DecoderFallbackBuffer abstract
public abstract class DecoderFallbackBuffer
type DecoderFallbackBuffer = class
Public MustInherit Class DecoderFallbackBuffer
Herança
DecoderFallbackBufferDecoderFallbackBufferDecoderFallbackBufferDecoderFallbackBuffer
Derivado

Comentários

Uma codificação define um mapeamento entre um caractere Unicode e uma sequência codificada de bytes.An encoding defines a mapping between a Unicode character and an encoded sequence of bytes. Uma operação de decodificação, que converte uma sequência de bytes de entrada em um caractere de saída, falha se nenhum mapeamento for definido para uma sequência de bytes específica.A decoding operation, which converts an input byte sequence to an output character, fails if no mapping is defined for a particular byte sequence.

O .NET Framework fornece um mecanismo de tratamento de falha, chamado de fallback, se uma conversão não puder ser executada.The .NET Framework provides a failure handling mechanism, called a fallback, if a conversion cannot be performed. Todos os manipuladores de fallback de decodificador devem implementar o seguinte:All decoder fallback handlers must implement the following:

  • Um fallback de decodificador, que é representado por uma classe DecoderFallback derivada da classe.A decoder fallback, which is represented by a class derived from the DecoderFallback class.

  • Um buffer de fallback de decodificador, que é representado por um DecoderFallbackBuffer tipo derivado da classe que pode retornar uma cadeia de caracteres para a operação de conversão.A decoder fallback buffer, which is represented by a type derived from the DecoderFallbackBuffer class that can return a string to the conversion operation.

Os Fallbacks podem usar três estratégias para lidar com falhas de conversão:Fallbacks can use three strategies to handle conversion failures:

  • Mapeamento de melhor ajuste.Best-fit mapping. O buffer de fallback do decodificador pode retornar uma cadeia de caracteres que representa uma aproximação aproximada da sequência de bytes de entrada.The decoder fallback buffer can return a string that represents a close approximation to the input byte sequence. O .NET Framework não fornece uma implementação de melhor ajuste DecoderFallbackBuffer pública.The .NET Framework does not provide a public best-fit DecoderFallbackBuffer implementation.

  • Irá.Replacement. O buffer de fallback de decodificador pode retornar uma cadeia de caracteres, como um ponto de interrogação ("?"), que indica que uma sequência de bytes não pôde ser decodificada.The decoder fallback buffer can return a string, such as a question mark ("?"), that indicates that a byte sequence could not be decoded. Na .NET Framework, as DecoderReplacementFallback classes e DecoderReplacementFallbackBuffer fornecem uma implementação de buffer de fallback de substituição pública.In the .NET Framework, the DecoderReplacementFallback and DecoderReplacementFallbackBuffer classes provide a public replacement fallback buffer implementation. O construtor da DecoderReplacementFallback classe permite que você defina a cadeia de caracteres de substituição.The constructor of the DecoderReplacementFallback class enables you to define the replacement string.

  • Exception.Exception. A DecoderFallbackBuffer implementação gera uma exceção, que indica que uma sequência de bytes não pode ser decodificada e encerra a operação de decodificação.The DecoderFallbackBuffer implementation throws an exception, which indicates that a byte sequence cannot be decoded, and terminates the decoding operation. Nesse caso, o manipulador de fallback deve fornecer uma DecoderFallbackBuffer implementação, embora não retorne uma cadeia de caracteres para o decodificador.In this case, the fallback handler must provide a DecoderFallbackBuffer implementation, although it does not return a string to the decoder. Na .NET Framework, as DecoderExceptionFallback classes e DecoderExceptionFallbackBuffer fornecem uma implementação de fallback de exceção pública que gera um DecoderFallbackException quando uma sequência de bytes não pode ser decodificada.In the .NET Framework, the DecoderExceptionFallback and DecoderExceptionFallbackBuffer classes provide a public exception fallback implementation that throws a DecoderFallbackException when a byte sequence cannot be decoded.

O buffer em uma DecoderFallbackBuffer implementação representa a cadeia de caracteres inteira a ser retornada ao decodificador em resposta a um fallback de decodificador.The buffer in a DecoderFallbackBuffer implementation represents the entire string to be returned to the decoder in response to a decoder fallback. Geralmente, as implementações também incluem informações de estado, como o índice do próximo caractere para retornar ao decodificador e o número de caracteres restantes a serem retornados.Generally, implementations also include state information, such as the index of the next character to return to the decoder and the number of remaining characters to be returned. Como DecoderFallbackBuffer é uma classe abstrata, ela requer que as classes derivadas implementem os seguintes membros no mínimo:Because DecoderFallbackBuffer is an abstract class, it requires derived classes to implement the following members at a minimum:

  • O Fallback método, que é chamado pelo decodificador quando ele não pode decodificar uma sequência de bytes.The Fallback method, which is called by the decoder when it cannot decode a byte sequence. O decodificador passa duas partes de informações para a implementação do buffer de fallback: uma matriz que contém os bytes que não puderam ser decodificados e o índice do primeiro byte na matriz de bytes de entrada.The decoder passes two pieces of information to the fallback buffer implementation: an array containing the bytes that could not be decoded and the index of the first byte in the input byte array. Em um manipulador de exceção de fallback de decodificador, a exceção é gerada nesse método.In a decoder fallback exception handler, the exception is thrown in this method. Caso contrário, o método true retornará se ele fornecer um fallback ou false se não tiver.Otherwise, the method returns true if it provides a fallback, or false if it does not.

  • O GetNextChar método, que é chamado repetidamente pelo decodificador se Fallback o método trueretornar.The GetNextChar method, which is called repeatedly by the decoder if the Fallback method returns true. Em chamadas sucessivas, o manipulador deve retornar cada caractere em seu buffer.In successive calls, the handler should return each character in its buffer. Quando ele retorna todos os caracteres, ele deve retornar U + 0000.When it has returned all characters, it should return U+0000. Um manipulador de fallback de exceção sempre retorna U + 0000.An exception fallback handler always returns U+0000.

  • O MovePrevious método, que tenta mover o ponteiro para a posição anterior no buffer e indica se a movimentação foi bem-sucedida.The MovePrevious method, which tries to move the pointer to the previous position in the buffer and indicates whether the move was successful. Um manipulador de exceção sempre falseretorna.An exception handler always returns false.

  • A Remaining Propriedade, que indica o número de caracteres restantes a serem retornados ao decodificador.The Remaining property, which indicates the number of remaining characters to be returned to the decoder. Um manipulador de fallback de exceção sempre retorna zero.An exception fallback handler always returns zero.

Construtores

DecoderFallbackBuffer() DecoderFallbackBuffer() DecoderFallbackBuffer() DecoderFallbackBuffer()

Inicializa uma nova instância da classe DecoderFallbackBuffer.Initializes a new instance of the DecoderFallbackBuffer class.

Propriedades

Remaining Remaining Remaining Remaining

Quando substituído em uma classe derivada, obtém o número máximo de caracteres no objeto DecoderFallbackBuffer atual que ainda não foi processado.When overridden in a derived class, gets the number of characters in the current DecoderFallbackBuffer object that remain to be processed.

Métodos

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

Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Fallback(Byte[], Int32) Fallback(Byte[], Int32) Fallback(Byte[], Int32) Fallback(Byte[], Int32)

Quando substituído em uma classe derivada, prepara o buffer de fallback para manipular a sequência de bytes de entrada especificada.When overridden in a derived class, prepares the fallback buffer to handle the specified input byte sequence.

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

Serve como a função de hash padrão.Serves as the default hash function.

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

Quando substituído em uma classe derivada, recupera o próximo caractere no buffer de fallback.When overridden in a derived class, retrieves the next character in the fallback buffer.

GetType() GetType() GetType() GetType()

Obtém o Type da instância atual.Gets the Type of the current instance.

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

Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object.

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

Quando substituído em uma classe derivada, faz com que a próxima chamada para o método GetNextChar() acesse a posição do caractere do buffer de dados que é anterior à posição atual do caractere.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 todas as informações de dados e de estado pertencentes a esse buffer de fallback.Initializes all data and state information pertaining to this fallback buffer.

ToString() ToString() ToString() ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object.

(Inherited from Object)

Aplica-se a

Veja também