DecoderFallbackBuffer Klasse

Definition

Stellt einen Puffer bereit, der einem Fallbackhandler ermöglicht, eine alternative Zeichenfolge an einen Decoder zurückzugeben, wenn keine Eingabebytesequenz decodiert werden kann.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
Vererbung
DecoderFallbackBuffer
Abgeleitet

Hinweise

Eine Codierung definiert eine Zuordnung zwischen einem Unicode-Zeichen und einer codierten Bytefolge.An encoding defines a mapping between a Unicode character and an encoded sequence of bytes. Ein Decodierungs Vorgang, der eine Eingabe Byte Sequenz in ein Ausgabe Zeichen konvertiert, schlägt fehl, wenn für eine bestimmte Byte Sequenz keine Zuordnung definiert ist.A decoding operation, which converts an input byte sequence to an output character, fails if no mapping is defined for a particular byte sequence.

Der .NET Framework bietet einen Fehler Behandlungs Mechanismus, der als Fallback bezeichnet wird, wenn keine Konvertierung ausgeführt werden kann.The .NET Framework provides a failure handling mechanism, called a fallback, if a conversion cannot be performed. Alle Decoder-Fall Back Handler müssen Folgendes implementieren:All decoder fallback handlers must implement the following:

  • Ein Decoder-Fallback, der durch eine von der DecoderFallback -Klasse abgeleitete Klasse dargestellt wird.A decoder fallback, which is represented by a class derived from the DecoderFallback class.

  • Ein Decoderfallbackpuffer, der durch einen von der DecoderFallbackBuffer -Klasse abgeleiteten Typ dargestellt wird, der eine Zeichenfolge an den Konvertierungs Vorgang zurückgeben kann.A decoder fallback buffer, which is represented by a type derived from the DecoderFallbackBuffer class that can return a string to the conversion operation.

Fallbacks können drei Strategien zur Behandlung von Konvertierungs Fehlern verwenden:Fallbacks can use three strategies to handle conversion failures:

  • Zuordnung mit einer optimalen Anpassung.Best-fit mapping. Der Decoder-Fall Back Puffer kann eine Zeichenfolge zurückgeben, die eine nahe Näherung zur Eingabe Byte Sequenz darstellt.The decoder fallback buffer can return a string that represents a close approximation to the input byte sequence. Der .NET Framework stellt keine öffentliche Implementierung mit optimaler Anpassung DecoderFallbackBuffer bereit.The .NET Framework does not provide a public best-fit DecoderFallbackBuffer implementation.

  • Nachfolger.Replacement. Der Decoder-Fall Back Puffer kann eine Zeichenfolge zurückgeben, z. b. ein Fragezeichen ("?"), das angibt, dass eine Byte Sequenz nicht decodiert werden konnte.The decoder fallback buffer can return a string, such as a question mark ("?"), that indicates that a byte sequence could not be decoded. In der .NET Framework stellen die DecoderReplacementFallback - DecoderReplacementFallbackBuffer Klasse und die-Klasse eine öffentliche Ersatz Fall Back Puffer Implementierung bereit.In the .NET Framework, the DecoderReplacementFallback and DecoderReplacementFallbackBuffer classes provide a public replacement fallback buffer implementation. Der Konstruktor der DecoderReplacementFallback -Klasse ermöglicht es Ihnen, die Ersetzungs Zeichenfolge zu definieren.The constructor of the DecoderReplacementFallback class enables you to define the replacement string.

  • Ausnahme.Exception. Die DecoderFallbackBuffer -Implementierung löst eine Ausnahme aus, die angibt, dass eine Byte Sequenz nicht decodiert werden kann, und beendet den Decodierungs Vorgang.The DecoderFallbackBuffer implementation throws an exception, which indicates that a byte sequence cannot be decoded, and terminates the decoding operation. In diesem Fall muss der Fall Back Handler eine DecoderFallbackBuffer -Implementierung bereitstellen, obwohl er keine Zeichenfolge an den Decoder zurückgibt.In this case, the fallback handler must provide a DecoderFallbackBuffer implementation, although it does not return a string to the decoder. In der .NET Framework stellen die DecoderExceptionFallback - DecoderExceptionFallbackBuffer Klasse und die-Klasse eine öffentliche Ausnahmefall Back Implementierung DecoderFallbackException bereit, die eine auslöst, wenn eine Bytefolge nicht decodiert werden kann.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.

Der Puffer in einer DecoderFallbackBuffer -Implementierung stellt die gesamte Zeichenfolge dar, die als Reaktion auf einen Decoder-Fallback an den Decoder zurückgegeben werden soll.The buffer in a DecoderFallbackBuffer implementation represents the entire string to be returned to the decoder in response to a decoder fallback. Im Allgemeinen enthalten Implementierungen auch Zustandsinformationen, z. b. den Index des nächsten Zeichens, das an den Decoder zurückgegeben werden soll, und die Anzahl der verbleibenden Zeichen, die zurückgegeben werden sollen.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. Da DecoderFallbackBuffer eine abstrakte Klasse ist, ist es erforderlich, dass abgeleitete Klassen mindestens die folgenden Member implementieren:Because DecoderFallbackBuffer is an abstract class, it requires derived classes to implement the following members at a minimum:

  • Die Fallback Methode, die vom Decoder aufgerufen wird, wenn Sie eine Byte Sequenz nicht decodieren kann.The Fallback method, which is called by the decoder when it cannot decode a byte sequence. Der Decoder übergibt zwei Informationen an die Implementierung des Fall Back Puffers: ein Array mit den bytes, die nicht decodiert werden konnten, und den Index des ersten Bytes im Eingabe Byte Array.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. In einem DecoderFallback-Ausnahmehandler wird die Ausnahme in dieser Methode ausgelöst.In a decoder fallback exception handler, the exception is thrown in this method. Andernfalls gibt die Methode zurück true false , wenn Sie einen Fallback bereitstellt, andernfalls.Otherwise, the method returns true if it provides a fallback, or false if it does not.

  • Die GetNextChar -Methode, die wiederholt vom Decoder aufgerufen wird, Fallback wenn die true-Methode zurückgibt.The GetNextChar method, which is called repeatedly by the decoder if the Fallback method returns true. Bei aufeinander folgenden Aufrufen sollte der Handler jedes Zeichen im Puffer zurückgeben.In successive calls, the handler should return each character in its buffer. Wenn alle Zeichen zurückgegeben wurden, sollte Sie U + 0000 zurückgeben.When it has returned all characters, it should return U+0000. Ein Ausnahmefall Back Handler gibt immer U + 0000 zurück.An exception fallback handler always returns U+0000.

  • Die MovePrevious -Methode, die versucht, den Zeiger auf die vorherige Position im Puffer zu verschieben und angibt, ob die Verschiebung erfolgreich war.The MovePrevious method, which tries to move the pointer to the previous position in the buffer and indicates whether the move was successful. Ein Ausnahmehandler gibt immer falsezurück.An exception handler always returns false.

  • Die Remaining -Eigenschaft, die die Anzahl der verbleibenden Zeichen angibt, die an den Decoder zurückgegeben werden sollen.The Remaining property, which indicates the number of remaining characters to be returned to the decoder. Ein Ausnahmefall Back Handler gibt immer 0 (null) zurück.An exception fallback handler always returns zero.

Konstruktoren

DecoderFallbackBuffer()

Initialisiert eine neue Instanz der DecoderFallbackBuffer-Klasse.Initializes a new instance of the DecoderFallbackBuffer class.

Eigenschaften

Remaining

Ruft beim Überschreiben in einer abgeleiteten Klasse die Anzahl der Zeichen im aktuellen DecoderFallbackBuffer-Objekt ab, die noch zu verarbeiten sind.When overridden in a derived class, gets the number of characters in the current DecoderFallbackBuffer object that remain to be processed.

Methoden

Equals(Object)

Ermittelt, ob das angegebene Objekt und das aktuelle Objekt gleich sind.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
Fallback(Byte[], Int32)

Bereitet beim Überschreiben in einer abgeleiteten Klasse den Fallbackpuffer darauf vor, die angegebene Eingabebytefolge zu behandeln.When overridden in a derived class, prepares the fallback buffer to handle the specified input byte sequence.

GetHashCode()

Dient als die Standard-HashfunktionServes as the default hash function.

(Geerbt von Object)
GetNextChar()

Ruft beim Überschreiben in einer abgeleiteten Klasse das nächste Zeichen im Fallbackpuffer ab.When overridden in a derived class, retrieves the next character in the fallback buffer.

GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
MovePrevious()

Veranlasst beim Überschreiben in einer abgeleiteten Klasse, dass der nächste Aufruf an die GetNextChar()-Methode auf die Datenpufferzeichenposition vor der aktuellen Zeichenposition zugreift.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()

Initialisiert alle Daten und Zustandsinformationen, die diesen Fallbackpuffer betreffen.Initializes all data and state information pertaining to this fallback buffer.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Gilt für:

Siehe auch