Partager via


EncoderFallback Classe

Définition

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

public ref class EncoderFallback abstract
public abstract class EncoderFallback
[System.Serializable]
public abstract class EncoderFallback
type EncoderFallback = class
[<System.Serializable>]
type EncoderFallback = class
Public MustInherit Class EncoderFallback
Héritage
EncoderFallback
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 type d’encodage, et la séquence d’octets Encoding.GetBytes est décodée en tableau de caractères ou en chaîne en appelant la ou Encoding.GetString la Encoding.GetChars méthode.

Une opération d’encodage peut échouer si le caractère d’entrée ne peut pas être représenté par l’encodage. Par exemple, un ASCIIEncoding objet ne peut pas encoder un caractère dont la valeur de point de code Unicode est en dehors de la plage U+0000 à U+007F.

Lorsqu’une conversion d’encodage 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 secours d’encodeur prédéfinies .NET Framework, ou créer un secours d’encodeur personnalisé dérivé des classes et EncoderFallbackBuffer des EncoderFallback classes.

EncoderFallbacket EncoderFallbackBuffer sont les classes de base pour tous les gestionnaires de secours d’encodage dans le .NET Framework. Ils prennent en charge les trois types de mécanismes de gestion de secours suivants :

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

  • Remplacement de secours, qui remplace chaque caractère qui ne peut pas être encodé par une chaîne prédéfinie. Le .NET Framework fournit un gestionnaire de secours de remplacement prédéfini. La EncoderReplacementFallback 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 substitut dans l’appel au EncoderReplacementFallback.EncoderReplacementFallback(String) constructeur. Une fois la chaîne de substitution émise, l’opération d’encodage continue de convertir le reste de l’entrée.

  • Secours d’exception, qui lève une exception lorsqu’un caractère ne peut pas être encodé. Le .NET Framework fournit un gestionnaire de secours d’exception prédéfini. La EncoderExceptionFallback classe lève une EncoderFallbackException exception lorsqu’un caractère non valide est rencontré et que l’opération d’encodage se termine.

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

  • Méthode CreateFallbackBuffer , qui retourne une instance de classe dérivée de EncoderFallbackBuffer. Selon le type de gestionnaire de secours que vous développez, l’implémentation EncoderFallbackBuffer 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 l’encodage de caractères dans le .NET Framework.

Constructeurs

EncoderFallback()

Initialise une nouvelle instance de la classe EncoderFallback.

Propriétés

ExceptionFallback

Obtient un objet qui lève une exception quand un caractère en entrée ne peut pas être encodé.

MaxCharCount

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

ReplacementFallback

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

Méthodes

CreateFallbackBuffer()

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

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