EncoderFallbackBuffer Klasa

Definicja

Udostępnia bufor, który umożliwia procedury obsługi rezerwowej zwraca alternatywny ciąg do kodera, gdy nie może zakodować znaku wejściowego.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
Dziedziczenie
EncoderFallbackBuffer
Pochodne

Uwagi

Kodowanie definiuje mapowanie między znakiem Unicode i zakodowaną sekwencją bajtów.An encoding defines a mapping between a Unicode character and an encoded sequence of bytes. Operacja kodowania, która konwertuje znak wejściowy na sekwencję bajtów wyjściowych, kończy się niepowodzeniem, jeśli nie zdefiniowano mapowania dla określonego znaku.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 zapewnia mechanizm obsługi niepowodzeń o nazwie Fallback, jeśli nie można wykonać konwersji.The .NET Framework provides a failure handling mechanism, called a fallback, if a conversion cannot be performed. Wszystkie programy obsługi powrotu do kodera muszą implementować następujące elementy:All encoder fallback handlers must implement the following:

  • Powrotu do kodera, która jest reprezentowana przez klasę pochodną EncoderFallback klasy.An encoder fallback, which is represented by a class derived from the EncoderFallback class.

  • Bufor rezerwowy kodera, który jest reprezentowany przez typ pochodny EncoderFallbackBuffer klasy, która może zwrócić ciąg do operacji konwersji.An encoder fallback buffer, which is represented by a type derived from the EncoderFallbackBuffer class that can return a string to the conversion operation.

Elementy powrotu mogą wykorzystywać trzy strategie do obsługi błędów konwersji:Fallbacks can use three strategies to handle conversion failures:

Bufor w EncoderFallbackBuffer implementacji reprezentuje cały ciąg, który ma zostać zwrócony do kodera w odpowiedzi na rezerwę kodera.The buffer in an EncoderFallbackBuffer implementation represents the entire string to be returned to the encoder in response to an encoder fallback. Ogólnie mówiąc, implementacje obejmują również informacje o stanie, takie jak indeks następnego znaku do zwrócenia do kodera i liczba pozostałych znaków do zwrócenia.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. Ponieważ EncoderFallbackBuffer jest klasą abstrakcyjną, wymaga klasy pochodnej do implementowania następujących elementów członkowskich jako minimum:Because EncoderFallbackBuffer is an abstract class, it requires derived classes to implement the following members at a minimum:

  • Przeciążona Fallback Metoda, która jest wywoływana przez koder, gdy nie może zakodować znaku.The overloaded Fallback method, which is called by the encoder when it cannot encode a character. Koder przekazuje dwie informacje do implementacji buforu rezerwowego: para znaków lub surogatu, której nie można zakodować i indeks znaku w danych wejściowych.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. W procedurze obsługi wyjątku rezerwowego kodera w tej metodzie jest zgłaszany wyjątek.In an encoder fallback exception handler, the exception is thrown in this method. W przeciwnym razie metoda zwraca wartość true , jeśli zawiera rezerwę, lub false Jeśli nie.Otherwise, the method returns true if it provides a fallback, or false if it does not.

  • GetNextCharMetoda, która jest wywoływana wielokrotnie przez koder, jeśli Fallback Metoda zwraca true .The GetNextChar method, which is called repeatedly by the encoder if the Fallback method returns true. W kolejnych wywołaniach procedura obsługi powinna zwrócić każdy znak w buforze.In successive calls, the handler should return each character in its buffer. Gdy zwróci wszystkie znaki, powinna zwrócić U + 0000.When it has returned all characters, it should return U+0000. Procedura obsługi wyjątków zawsze zwraca wartość U + 0000.An exception handler always returns U+0000.

  • MovePreviousMetoda, która próbuje przenieść wskaźnik do poprzedniego położenia w buforze i wskazuje, czy przeniesienie zakończyło się pomyślnie.The MovePrevious method, which tries to move the pointer to the previous position in the buffer and indicates whether the move was successful. Program obsługi wyjątków zawsze zwraca wartość false .An exception handler always returns false.

  • RemainingWłaściwość, która wskazuje liczbę pozostałych znaków do zwrócenia do kodera.The Remaining property, which indicates the number of remaining characters to be returned to the encoder. Procedura obsługi powrotu wyjątku zawsze zwraca wartość zero.An exception fallback handler always returns zero.

Konstruktory

EncoderFallbackBuffer()

Inicjuje nowe wystąpienie klasy EncoderFallbackBuffer.Initializes a new instance of the EncoderFallbackBuffer class.

Właściwości

Remaining

Gdy jest zastępowany w klasie pochodnej, pobiera liczbę znaków w bieżącym EncoderFallbackBuffer obiekcie, która pozostanie do przetworzenia.When overridden in a derived class, gets the number of characters in the current EncoderFallbackBuffer object that remain to be processed.

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.Determines whether the specified object is equal to the current object.

(Odziedziczone po Object)
Fallback(Char, Char, Int32)

Gdy jest zastępowany w klasie pochodnej, przygotowuje bufor rezerwowy do obsługi określonej pary zastępczej.When overridden in a derived class, prepares the fallback buffer to handle the specified surrogate pair.

Fallback(Char, Int32)

Gdy jest zastępowany w klasie pochodnej, przygotowuje bufor rezerwowy, aby obsłużyć określony znak wejściowy.When overridden in a derived class, prepares the fallback buffer to handle the specified input character.

GetHashCode()

Służy jako domyślna funkcja skrótu.Serves as the default hash function.

(Odziedziczone po Object)
GetNextChar()

Gdy jest zastępowany w klasie pochodnej, pobiera następny znak w buforze rezerwowym.When overridden in a derived class, retrieves the next character in the fallback buffer.

GetType()

Pobiera Type bieżące wystąpienie.Gets the Type of the current instance.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy skróconą kopię bieżącego elementu Object .Creates a shallow copy of the current Object.

(Odziedziczone po Object)
MovePrevious()

Gdy jest zastępowany w klasie pochodnej, powoduje następne wywołanie metody, GetNextChar() Aby uzyskać dostęp do pozycji znaku bufora danych przed bieżącą pozycją znaku.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()

Inicjuje wszystkie dane i informacje o stanie odnoszące się do tego buforu rezerwowego.Initializes all data and state information pertaining to this fallback buffer.

ToString()

Zwraca ciąg reprezentujący bieżący obiekt.Returns a string that represents the current object.

(Odziedziczone po Object)

Dotyczy

Zobacz też