Partager via


DecoderFallback Classe

Définition

Fournit un mécanisme de gestion des erreurs, appelé secours, quand une séquence d'octets codée en entrée ne peut pas être convertie en un caractère de sortie.

public ref class DecoderFallback abstract
public abstract class DecoderFallback
[System.Serializable]
public abstract class DecoderFallback
type DecoderFallback = class
[<System.Serializable>]
type DecoderFallback = class
Public MustInherit Class DecoderFallback
Héritage
DecoderFallback
Dérivé
Attributs

Remarques

Un encodage mappe un caractère Unicode à une séquence codée d’octets. Un encodage particulier est représenté par un type dérivé de la Encoding classe. Plus précisément, un caractère est encodé dans une séquence d’octets en appelant la méthode du Encoding.GetBytes type d’encodage, et la séquence d’octets est décodée dans un tableau de caractères ou une chaîne en appelant la méthode ou Encoding.GetString la Encoding.GetChars méthode.

Une opération de décodage peut échouer si la séquence d’octets d’entrée ne peut pas être mappée par l’encodage. Par exemple, un ASCIIEncoding objet ne peut pas décoder une séquence d’octets si cette séquence représente un caractère qui a une valeur de point de code qui se trouve en dehors de la plage U+0000 à U+007F.

Lorsqu’une conversion de décodage ne peut pas être effectuée, le .NET Framework fournit un mécanisme de gestion des défaillances appelé secours. Votre application peut utiliser des .NET Framework prédéfinis, ou créer un secours de décodeur personnalisé dérivé des classes et DecoderFallbackBuffer des DecoderFallback classes.

DecoderFallbacket DecoderFallbackBuffer sont les classes de base pour tous les gestionnaires de secours de décodage dans le .NET Framework. Ils prennent en charge les trois types suivants de mécanismes de gestion de secours :

  • Secours mieux adapté, qui mappe les caractères Unicode valides qui ne peuvent pas être décodés à un équivalent approximatif. Par exemple, un gestionnaire de secours mieux adapté pour la ASCIIEncoding classe peut mapper Æ (U+00C6) à AE (U+0041 + U+0045). Un gestionnaire de secours mieux adapté peut également être implémenté pour translittérer un alphabet (tel que cyrillique) à un autre (tel que latin ou romain). Le .NET Framework ne fournit aucune implémentation de secours adaptée au mieux publique.

  • Remplacement de la secours, qui remplace chaque caractère qui ne peut pas être décodé par une chaîne prédéfinie. Le .NET Framework fournit un gestionnaire de secours de remplacement prédéfini. La DecoderReplacementFallback classe remplace chaque séquence d’octets qui ne peut pas être décodée par un caractère de point d’interrogation (« ? », ou U+003F) ou un CARACTÈRE DE REMPLACEMENT (U+FFFD). Vous pouvez personnaliser la chaîne de remplacement en spécifiant un remplacement dans l’appel au DecoderReplacementFallback.DecoderReplacementFallback(String) constructeur. Une fois la chaîne de remplacement émise, l’opération de décodage continue de convertir le reste de l’entrée.

  • Secours d’exception, qui lève une exception lorsqu’une séquence d’octets ne peut pas être décodée. Le .NET Framework fournit un gestionnaire de secours d’exception prédéfini. La DecoderExceptionFallback classe lève une DecoderFallbackException séquence d’octets non valide et l’opération de décodage se termine.

Si vous choisissez d’implémenter une solution personnalisée, vous devez remplacer les membres abstraits suivants de la DecoderFallback classe :

  • Méthode CreateFallbackBuffer , qui retourne une instance de classe dérivée de DecoderFallbackBuffer. Selon le type de gestionnaire de secours que vous développez, l’implémentation DecoderFallbackBuffer est chargée d’effectuer le mappage ou le remplacement, ou de lever l’exception.

  • Propriété MaxCharCount , qui retourne le nombre maximal de caractères que l’implémentation de secours peut retourner. Pour un gestionnaire de secours d’exception, sa valeur doit être égale à zéro.

Pour plus d’informations sur l’encodage, le décodage et les stratégies de secours, consultez Encodage de caractères dans le .NET Framework.

Constructeurs

DecoderFallback()

Initialise une nouvelle instance de la classe DecoderFallback.

Propriétés

ExceptionFallback

Obtient un objet qui lève une exception quand une séquence d'octets en entrée ne peut pas être décodée.

MaxCharCount

En cas de substitution dans une classe dérivée, obtient le nombre maximal de caractères que l'objet DecoderFallback en cours peut retourner.

ReplacementFallback

Obtient un objet qui produit une chaîne de substitution à la place de la séquence d'octets en entrée qui ne peut pas être décodée.

Méthodes

CreateFallbackBuffer()

En cas de substitution dans une classe dérivée, initialise une nouvelle instance de la classe DecoderFallbackBuffer.

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Voir aussi