Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

Encoding, classe

 

Représente un encodage de caractères.

Pour parcourir le code source .NET Framework pour ce type, consultez la Reference Source.

Espace de noms:   System.Text
Assembly:  mscorlib (dans mscorlib.dll)


[SerializableAttribute]
[ComVisibleAttribute(true)]
public abstract class Encoding : ICloneable

NomDescription
System_CAPS_protmethodEncoding()

Initialise une nouvelle instance de la classe Encoding.

System_CAPS_protmethodEncoding(Int32)

Initialise une nouvelle instance de la classe Encoding qui correspond à la page de codes spécifiée.

System_CAPS_protmethodEncoding(Int32, EncoderFallback, DecoderFallback)

Initialise une nouvelle instance de la classe Encoding qui correspond à la page de code spécifiée avec les stratégies de secours d'encodeur et de décodeur spécifiées.

NomDescription
System_CAPS_pubpropertySystem_CAPS_staticASCII

Obtient un encodage pour le jeu de caractères ASCII (7 bits).

System_CAPS_pubpropertySystem_CAPS_staticBigEndianUnicode

Obtient un encodage pour le format UTF-16 qui utilise l'ordre d'octet avec primauté des octets de poids fort (big-endian).

System_CAPS_pubpropertyBodyName

En cas de substitution dans une classe dérivée, obtient un nom pour l'encodage actuel qui peut être utilisé avec les balises de corps de texte de l'agent de messagerie.

System_CAPS_pubpropertyCodePage

En cas de substitution dans une classe dérivée, obtient l'identificateur de la page de codes du Encoding actuel.

System_CAPS_pubpropertyDecoderFallback

Obtient ou définit l'objet DecoderFallback actuel de l'objet Encoding actuel.

System_CAPS_pubpropertySystem_CAPS_staticDefault

Obtient un encodage pour la page de codes ANSI actuelle du système d'exploitation.

System_CAPS_pubpropertyEncoderFallback

Obtient ou définit l'objet EncoderFallback actuel de l'objet Encoding actuel.

System_CAPS_pubpropertyEncodingName

En cas de substitution dans une classe dérivée, obtient la description explicite de l'encodage actuel.

System_CAPS_pubpropertyHeaderName

En cas de substitution dans une classe dérivée, obtient un nom pour l'encodage actuel qui peut être utilisé avec les balises d'en-tête de l'agent de messagerie.

System_CAPS_pubpropertyIsBrowserDisplay

En cas de substitution dans une classe dérivée, obtient une valeur indiquant si l'encodage actuel peut être utilisé par les clients de navigation pour afficher le contenu.

System_CAPS_pubpropertyIsBrowserSave

En cas de substitution dans une classe dérivée, obtient une valeur indiquant si l'encodage actuel peut être utilisé par les clients de navigation pour enregistrer du contenu.

System_CAPS_pubpropertyIsMailNewsDisplay

En cas de substitution dans une classe dérivée, obtient une valeur indiquant si l'encodage actuel peut être utilisé par les clients de messagerie et de news pour afficher du contenu.

System_CAPS_pubpropertyIsMailNewsSave

En cas de substitution dans une classe dérivée, obtient une valeur indiquant si l'encodage actuel peut être utilisé par les clients de messagerie et de news pour enregistrer du contenu.

System_CAPS_pubpropertyIsReadOnly

En cas de substitution dans une classe dérivée, obtient une valeur indiquant si l'encodage actuel est en lecture seule.

System_CAPS_pubpropertyIsSingleByte

En cas de substitution dans une classe dérivée, obtient une valeur indiquant si l'encodage actuel utilise des points de code codés sur un octet.

System_CAPS_pubpropertySystem_CAPS_staticUnicode

Obtient un encodage pour le format UTF-16 avec primauté des octets de poids faible (little-endian).

System_CAPS_pubpropertySystem_CAPS_staticUTF32

Obtient un encodage pour le format UTF-32 avec primauté des octets de poids faible (little-endian).

System_CAPS_pubpropertySystem_CAPS_staticUTF7

Obtient un encodage pour le format UTF-7.

System_CAPS_pubpropertySystem_CAPS_staticUTF8

Obtient un encodage pour le format UTF-8.

System_CAPS_pubpropertyWebName

En cas de substitution dans une classe dérivée, obtient le nom enregistré avec l'Internet IANA Assigned Numbers Authority () pour l'encodage actuel.

System_CAPS_pubpropertyWindowsCodePage

En cas de substitution dans une classe dérivée, obtient la page de codes du système d'exploitation Windows la plus proche de l'encodage actuel.

NomDescription
System_CAPS_pubmethodClone()

En cas de substitution dans une classe dérivée, crée une copie superficielle de l'objet Encoding actuel.

System_CAPS_pubmethodSystem_CAPS_staticConvert(Encoding, Encoding, Byte[])

Convertit un tableau d'octets entier d'un encodage à un autre.

System_CAPS_pubmethodSystem_CAPS_staticConvert(Encoding, Encoding, Byte[], Int32, Int32)

Convertit une plage d'octets d'un encodage à un autre dans un tableau d'octets.

System_CAPS_pubmethodEquals(Object)

Détermine si le Object spécifié est égal à l'instance actuelle.(Remplace Object.Equals(Object).)

System_CAPS_protmethodFinalize()

Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)

System_CAPS_pubmethodGetByteCount(Char*, Int32)

En cas de substitution dans une classe dérivée, calcule le nombre d'octets produits par l'encodage d'un jeu de caractères commençant au pointeur de caractère spécifié.

System_CAPS_pubmethodGetByteCount(Char[])

En cas de substitution dans une classe dérivée, calcule le nombre d'octets produits par l'encodage de tous les caractères du tableau de caractères spécifié.

System_CAPS_pubmethodGetByteCount(Char[], Int32, Int32)

En cas de substitution dans une classe dérivée, calcule le nombre d'octets produits par l'encodage d'un jeu de caractères du tableau de caractères spécifié.

System_CAPS_pubmethodGetByteCount(String)

En cas de substitution dans une classe dérivée, calcule le nombre d'octets produits par l'encodage des caractères de la chaîne spécifiée.

System_CAPS_pubmethodGetBytes(Char*, Int32, Byte*, Int32)

En cas de substitution dans une classe dérivée, encode un jeu de caractères commençant au pointeur de caractère spécifié en séquence d'octets stockés à partir du pointeur d'octet spécifié.

System_CAPS_pubmethodGetBytes(Char[])

En cas de substitution dans une classe dérivée, encode tous les caractères du tableau de caractères spécifié en séquence d'octets.

System_CAPS_pubmethodGetBytes(Char[], Int32, Int32)

En cas de substitution dans une classe dérivée, encode un jeu de caractères du tableau de caractères spécifié en séquence d'octets.

System_CAPS_pubmethodGetBytes(Char[], Int32, Int32, Byte[], Int32)

En cas de substitution dans une classe dérivée, encode un jeu de caractères du tableau de caractères spécifié en tableau d'octets.

System_CAPS_pubmethodGetBytes(String)

En cas de substitution dans une classe dérivée, encode tous les caractères de la chaîne spécifiée en séquence d'octets.

System_CAPS_pubmethodGetBytes(String, Int32, Int32, Byte[], Int32)

En cas de substitution dans une classe dérivée, encode un jeu de caractères de la chaîne spécifiée en tableau d'octets spécifié.

System_CAPS_pubmethodGetCharCount(Byte*, Int32)

En cas de substitution dans une classe dérivée, calcule le nombre de caractères produits par le décodage d'une séquence d'octets commençant au pointeur d'octet spécifié.

System_CAPS_pubmethodGetCharCount(Byte[])

En cas de substitution dans une classe dérivée, calcule le nombre de caractères produits par le décodage de tous les octets du tableau d'octets spécifié.

System_CAPS_pubmethodGetCharCount(Byte[], Int32, Int32)

En cas de substitution dans une classe dérivée, calcule le nombre de caractères produits par le décodage d'une séquence d'octets du tableau d'octets spécifié.

System_CAPS_pubmethodGetChars(Byte*, Int32, Char*, Int32)

En cas de substitution dans une classe dérivée, décode une séquence d'octets commençant au pointeur d'octet spécifié en jeu de caractères stockés à partir du pointeur de caractère spécifié.

System_CAPS_pubmethodGetChars(Byte[])

En cas de substitution dans une classe dérivée, décode tous les octets du tableau d'octets spécifié en jeu de caractères.

System_CAPS_pubmethodGetChars(Byte[], Int32, Int32)

En cas de substitution dans une classe dérivée, décode une séquence d'octets du tableau d'octets spécifié en jeu de caractères.

System_CAPS_pubmethodGetChars(Byte[], Int32, Int32, Char[], Int32)

En cas de substitution dans une classe dérivée, décode une séquence d'octets du tableau d'octets spécifié en tableau de caractères spécifié.

System_CAPS_pubmethodGetDecoder()

En cas de substitution dans une classe dérivée, obtient un décodeur qui convertit une séquence d'octets encodée en séquence de caractères.

System_CAPS_pubmethodGetEncoder()

En cas de substitution dans une classe dérivée, obtient un encodeur qui convertit une séquence de caractères Unicode en séquence d'octets encodée.

System_CAPS_pubmethodSystem_CAPS_staticGetEncoding(Int32)

Retourne l'encodage associé à l'identificateur de page de codes spécifié.

System_CAPS_pubmethodSystem_CAPS_staticGetEncoding(Int32, EncoderFallback, DecoderFallback)

Retourne l'encodage associé à l'identificateur de page de codes spécifié. Les paramètres spécifient un gestionnaire d'erreurs pour les caractères qui ne peuvent pas être encodés et pour les séquences d'octets qui ne peuvent pas être décodées.

System_CAPS_pubmethodSystem_CAPS_staticGetEncoding(String)

Retourne l'encodage associé au nom de la page de codes spécifiée.

System_CAPS_pubmethodSystem_CAPS_staticGetEncoding(String, EncoderFallback, DecoderFallback)

Retourne l'encodage associé au nom de la page de codes spécifiée. Les paramètres spécifient un gestionnaire d'erreurs pour les caractères qui ne peuvent pas être encodés et pour les séquences d'octets qui ne peuvent pas être décodées.

System_CAPS_pubmethodSystem_CAPS_staticGetEncodings()

Retourne un tableau qui contient tous les encodages.

System_CAPS_pubmethodGetHashCode()

Retourne le code de hachage pour l'instance actuelle.(Remplace Object.GetHashCode().)

System_CAPS_pubmethodGetMaxByteCount(Int32)

En cas de substitution dans une classe dérivée, calcule le nombre maximal d'octets produits par l'encodage du nombre de caractères spécifié.

System_CAPS_pubmethodGetMaxCharCount(Int32)

En cas de substitution dans une classe dérivée, calcule le nombre maximal de caractères produits par le décodage du nombre de caractères spécifié.

System_CAPS_pubmethodGetPreamble()

En cas de substitution dans une classe dérivée, retourne une séquence d'octets qui spécifie l'encodage utilisé.

System_CAPS_pubmethodGetString(Byte*, Int32)

En cas de substitution dans une classe dérivée, décode un nombre d'octets spécifié en commençant à une adresse spécifiée dans une chaîne.

System_CAPS_pubmethodGetString(Byte[])

En cas de substitution dans une classe dérivée, décode tous les octets du tableau d'octets spécifié en chaîne.

System_CAPS_pubmethodGetString(Byte[], Int32, Int32)

En cas de substitution dans une classe dérivée, décode une séquence d'octets du tableau d'octets spécifié en chaîne.

System_CAPS_pubmethodGetType()

Obtient le Type de l'instance actuelle.(Hérité de Object.)

System_CAPS_pubmethodIsAlwaysNormalized()

Obtient une valeur indiquant si l'encodage actuel est toujours normalisé en utilisant le formulaire de normalisation par défaut.

System_CAPS_pubmethodIsAlwaysNormalized(NormalizationForm)

En cas de substitution dans une classe dérivée, obtient une valeur indiquant si l'encodage actuel est toujours normalisé en utilisant le formulaire de normalisation spécifié.

System_CAPS_protmethodMemberwiseClone()

Crée une copie superficielle du Object actuel.(Hérité de Object.)

System_CAPS_pubmethodSystem_CAPS_staticRegisterProvider(EncodingProvider)

Enregistre un fournisseur d'encodage.

System_CAPS_pubmethodToString()

Retourne une chaîne qui représente l'objet actuel.(Hérité de Object.)

System_CAPS_noteRemarque

Pour afficher le code source .NET Framework pour ce type, consultez la Reference Source. Vous pouvez parcourir le code source en ligne, télécharger la référence hors connexion et parcourir les sources (y compris les correctifs et mises à jour) pendant le débogage ; see instructions.

L'encodage est le processus de transformation d'un jeu de caractères Unicode en une séquence d'octets. En revanche, le décodage est le processus de transformation d'une séquence d'octets codés en un jeu de caractères Unicode. Pour plus d'informations sur les Formats (formats UTF) et d'autres encodages pris en charge par Encoding, consultez la page Encodage de caractères dans le .NET Framework.

Notez que Encoding est destiné à opérer sur des caractères Unicode au lieu des données binaires arbitraires, tels que des tableaux d'octets. Si vous devez encoder des données arbitraires en texte, vous devez utiliser un protocole tel qu'uuencode, qui est implémentée par les méthodes telles que Convert.ToBase64CharArray.

Le .NET Framework fournit les implémentations suivantes de la Encoding classe pour prendre en charge les encodages Unicode et autres :

  • ASCIIEncoding encode les caractères Unicode en caractères ASCII simples de 7 bits. Cet encodage prend en charge uniquement les valeurs caractère entre U + 0000 et U + 007F. Page de codes 20127. Également disponible via la ASCII propriété.

  • UTF7Encoding encode les caractères Unicode à l'aide de l'encodage UTF-7. Cet encodage prend en charge toutes les valeurs de caractères Unicode. Page de codes 65000. Également disponible via la UTF7 propriété.

  • UTF8Encoding encode les caractères Unicode à l'aide de l'encodage UTF-8. Cet encodage prend en charge toutes les valeurs de caractères Unicode. Page de codes 65001. Également disponible via la UTF8 propriété.

  • UnicodeEncoding encode les caractères Unicode à l'aide de l'encodage UTF-16. Les ordres des octets little endian et big endian sont pris en charge. Également disponible via la Unicode propriété et BigEndianUnicode propriété.

  • UTF32Encoding encode les caractères Unicode à l'aide de l'encodage UTF-32. À la fois little endian (page de codes 12000) et octet big endian (page de codes 12001) ordres sont pris en charge. Également disponible via la UTF32 propriété.

La Encoding classe vise essentiellement à convertir entre différents encodages et Unicode. Une des classes Unicode dérivées est souvent le bon choix pour votre application.

Utilisez la GetEncoding méthode pour obtenir d'autres encodages et appelez le GetEncodings méthode pour obtenir une liste de tous les encodages.

Le tableau suivant répertorie les encodages pris en charge par le .NET Framework. Il répertorie le numéro de page de code de chaque codage et les valeurs du codage EncodingInfo.Name et EncodingInfo.DisplayName Propriétés. Un astérisque dans la dernière colonne indique que la page de codes est prise en charge par le .NET Framework, quelle que soit la plateforme sous-jacente. Notez que des pages de code dont EncodingInfo.Name propriété correspond à une norme internationale ne répondent pas nécessairement dans leur intégralité avec cette norme.

Page de codes

Nom

Nom affiché

Prise en charge de .NET framework

37

IBM037

IBM EBCDIC (États-Unis-Canada)

437

IBM437

OEM États-Unis

500

IBM500

IBM EBCDIC (International)

708

ASMO-708

Arabe (ASMO 708)

720

DOS-720

Arabe (DOS)

737

ibm737

Grec (DOS)

775

ibm775

Baltique (DOS)

850

ibm850

Europe occidentale (DOS)

852

ibm852

Europe centrale (DOS)

855

IBM855

OEM cyrillique

857

ibm857

Turc (DOS)

858

IBM00858

Latin multilingue OEM I

860

IBM860

Portugais (DOS)

861

ibm861

Islandais (DOS)

862

DÉNI DE SERVICE-862

Hébreu (DOS)

863

IBM863

Français canadien (DOS)

864

IBM864

Arabe (864)

865

IBM865

Langues scandinaves (DOS)

866

cp866

Cyrillique (DOS)

869

ibm869

Grec moderne (DOS)

870

IBM870

IBM EBCDIC (multilingue Latin-2)

874

Windows-874

Thaï (Windows)

875

cp875

IBM EBCDIC (grec moderne)

932

Shift_JIS

Japonais (Shift-JIS)

936

GB2312

Chinois simplifié (GB2312)

949

ks_c_5601-1987

Coréen

950

Big5

Chinois traditionnel (Big5)

1026

IBM1026

IBM EBCDIC (turc Latin-5)

1047

IBM01047

IBM Latin-1

1140

IBM01140

IBM EBCDIC (États-Unis-Canada-Europe)

1141

IBM01141

IBM EBCDIC (Allemagne-Europe)

1142

IBM01142

IBM EBCDIC (Danemark-Norvège-Europe)

1143

IBM01143

IBM EBCDIC (Finlande-Suède-Europe)

1144

IBM01144

IBM EBCDIC (Italie-Europe)

1145

IBM01145

IBM EBCDIC (Espagne-Europe)

1146

IBM01146

IBM EBCDIC (Royaume Uni-Europe)

1147

IBM01147

IBM EBCDIC (France-Europe)

1148

IBM01148

IBM EBCDIC (International-Europe)

1149

IBM01149

IBM EBCDIC (islandais-Europe)

1200

UTF-16.

Unicode

1201

unicodeFFFE

Unicode (Big endian)

1250

Windows-1250

Europe centrale (Windows)

1251

Windows-1251

Cyrillique (Windows)

1252

Windows-1252

Europe occidentale (Windows)

1253

Windows-1253

Grec (Windows)

1254

Windows-1254

Turc (Windows)

1255

Windows-1255

Hébreu (Windows)

1256

Windows-1256

Arabe (Windows)

1257

Windows-1257

Baltique (Windows)

1258

Windows-1258

Vietnamien (Windows)

1361

Johab

Coréen (Johab)

10000

Macintosh

Europe de l'Ouest (Mac)

10001

x-mac-japonais

Japonais (Mac)

10002

x-mac-chinois trad.

Chinois traditionnel (Mac)

10003

x-mac-coréen

Coréen (Mac)

10004

x-mac-arabe

Arabe (Mac)

10005

x-mac-hébreu

Hébreu (Mac)

10006

x-mac-grec

Grec (Mac)

10007

x-mac-cyrillique

Cyrillique (Mac)

10008

x-mac-chinesesimp

Chinois simplifié (Mac)

10010

x-mac-roumain

Roumain (Mac)

10017

x-mac-ukrainien

Ukrainien (Mac)

10021

x-mac-thaï

Thaï (Mac)

10029

x-mac-ce

Europe centrale (Mac)

10079

x-mac-islandais

Islandais (Mac)

10081

x-mac-turc

Turc (Mac)

10082

x-mac-croate

Croate (Mac)

12000

UTF-32.

Unicode (UTF-32)

12001

UTF-32be ne

Unicode (UTF-32 Big endian)

20000

Chinois-x-CNS

Chinois traditionnel (CNS)

20001

x-cp20001

ACT Taïwan

20002

Chinois-x-Eten

Chinois traditionnel (Eten)

20003

x-cp20003

IBM5550 Taïwan

20004

x-cp20004

Télétexte Taïwan

20005

x-cp20005

Wang Taïwan

20105

x-IA5

Europe de l'Ouest (IA5)

20106

x-IA5-allemand

Allemand (IA5)

20107

x-IA5-suédois

Suédois (IA5)

20108

x-IA5-norvégien

Norvégien (IA5)

20127

us-ascii

US-ASCII

20261

x-cp20261

T.61

20269

x-cp20269

ISO 6937

20273

IBM273

IBM EBCDIC (Allemagne)

20277

IBM277

IBM EBCDIC (Danemark-Norvège)

20278

IBM278

IBM EBCDIC (Finlande-Suède)

20280

IBM280

IBM EBCDIC (Italie)

20284

IBM284

IBM EBCDIC (Espagne)

20285

IBM285

IBM EBCDIC (ROYAUME-UNI)

20290

IBM290

IBM EBCDIC (japonais katakana)

20297

IBM297

IBM EBCDIC (France)

20420

IBM420

IBM EBCDIC (arabe)

20423

IBM423

IBM EBCDIC (grec)

20424

IBM424

IBM EBCDIC (hébreu)

20833

EBCDIC-x-KoreanExtended

IBM EBCDIC (coréen étendu)

20838

IBM-thaï

IBM EBCDIC (thaï)

20866

koi8-r

Cyrillique (KOI8-R)

20871

IBM871

IBM EBCDIC (islandais)

20880

IBM880

IBM EBCDIC (cyrillique russe)

20905

IBM905

IBM EBCDIC (turc)

20924

IBM00924

IBM Latin-1

20932

EUC-JP

Japonais (JIS 0208-1990 et 0212-1990)

20936

x-cp20936

Chinois simplifié (GB2312-80)

20949

x-cp20949

Coréen Wansung

21025

cp1025

IBM EBCDIC (serbe-bulgare cyrillique)

21866

KOI8-u

Cyrillique (KOI8-U)

28591

ISO-8859-1

Europe occidentale (ISO)

28592

ISO-8859-2

Europe centrale (ISO)

28593

ISO-8859-3

3 latin (ISO)

28594

ISO-8859-4

Baltique (ISO)

28595

ISO-8859-5

Cyrillique (ISO)

28596

ISO-8859-6

Arabe (ISO)

28597

ISO-8859-7

Grec (ISO)

28598

ISO-8859-8

Hébreu (ISO-Visual)

28599

ISO-8859-9

Turc (ISO)

28603

ISO-8859-13

Estonien (ISO)

28605

ISO-8859-15

Latin 9 (ISO)

29001

x-Europa

Europa

38598

ISO-8859-8-i

Hébreu (ISO-logique)

50220

ISO-2022-jp

Japonais (JIS)

50221

csISO2022JP

Japonais (JIS-autorise Kana 1 octet)

50222

ISO-2022-jp

Japonais (JIS-Permettre 1 octet Kana - donc / SI)

50225

ISO-2022-kr

Coréen (ISO)

50227

x-cp50227

Chinois simplifié (ISO-2022)

51932

euc-jp

Japonais (EUC)

51936

EUC-CN

Chinois simplifié (EUC)

51949

euc-kr

Coréen (EUC)

52936

Hz-Go-2312

Chinois simplifié (HZ)

54936

GB18030

Chinois simplifié (GB18030)

57002

x-iscii-de

ISCII DÉVANÂGARÎ

57003

x-iscii-be

ISCII Bengali

57004

x-iscii-ta

Tamoul ISCII

57005

x-iscii-te

ISCII Telugu

57006

x-iscii-en tant que

ISCII Assamais

57007

iscii x ou

ISCII Oriya

57008

x-iscii-ka

ISCII Kannada

57009

x-iscii-ma

ISCII Malayalam

57010

x-iscii-gu

ISCII Goudjrati

57011

x-iscii-pa

ISCII pendjabi

65000

UTF-7.

Unicode (UTF-7)

65001

UTF-8

Unicode (UTF-8)

L'exemple suivant appelle la GetEncoding(Int32) et GetEncoding(String) le codage de page de code de méthodes pour obtenir le grec (Windows). Il compare la Encoding objets retournés par les appels de méthode pour indiquer qu'ils sont égaux, et cartes affiche ensuite le point de code Unicode et la valeur de page de code correspondant pour chaque caractère de l'alphabet grec.

using System;
using System.Text;

public class Example
{
   public static void Main()
   {
      Encoding enc = Encoding.GetEncoding(1253);
      Encoding altEnc = Encoding.GetEncoding("windows-1253");
      Console.WriteLine("{0} = Code Page {1}: {2}", enc.EncodingName,
                        altEnc.CodePage, enc.Equals(altEnc));
      string greekAlphabet = "Α α Β β Γ γ Δ δ Ε ε Ζ ζ Η η " +
                             "Θ θ Ι ι Κ κ Λ λ Μ μ Ν ν Ξ ξ " +
                             "Ο ο Π π Ρ ρ Σ σ ς Τ τ Υ υ " +
                             "Φ φ Χ χ Ψ ψ Ω ω";
      Console.OutputEncoding = Encoding.UTF8;
      byte[] bytes = enc.GetBytes(greekAlphabet);
      Console.WriteLine("{0,-12} {1,20} {2,20:X2}", "Character",
                        "Unicode Code Point", "Code Page 1253");
      for (int ctr = 0; ctr < bytes.Length; ctr++) {
         if (greekAlphabet[ctr].Equals(' '))
            continue;

         Console.WriteLine("{0,-12} {1,20} {2,20:X2}", greekAlphabet[ctr],
                           GetCodePoint(greekAlphabet[ctr]), bytes[ctr]);
      }
   }

   private static string GetCodePoint(char ch)
   {
      string retVal = "u+";
      byte[] bytes = Encoding.Unicode.GetBytes(ch.ToString());
      for (int ctr = bytes.Length - 1; ctr >= 0; ctr--)
         retVal += bytes[ctr].ToString("X2");

      return retVal;
   }
}
// The example displays the following output:
//       Character      Unicode Code Point       Code Page 1253
//       Α                          u+0391                   C1
//       α                          u+03B1                   E1
//       Β                          u+0392                   C2
//       β                          u+03B2                   E2
//       Γ                          u+0393                   C3
//       γ                          u+03B3                   E3
//       Δ                          u+0394                   C4
//       δ                          u+03B4                   E4
//       Ε                          u+0395                   C5
//       ε                          u+03B5                   E5
//       Ζ                          u+0396                   C6
//       ζ                          u+03B6                   E6
//       Η                          u+0397                   C7
//       η                          u+03B7                   E7
//       Θ                          u+0398                   C8
//       θ                          u+03B8                   E8
//       Ι                          u+0399                   C9
//       ι                          u+03B9                   E9
//       Κ                          u+039A                   CA
//       κ                          u+03BA                   EA
//       Λ                          u+039B                   CB
//       λ                          u+03BB                   EB
//       Μ                          u+039C                   CC
//       μ                          u+03BC                   EC
//       Ν                          u+039D                   CD
//       ν                          u+03BD                   ED
//       Ξ                          u+039E                   CE
//       ξ                          u+03BE                   EE
//       Ο                          u+039F                   CF
//       ο                          u+03BF                   EF
//       Π                          u+03A0                   D0
//       π                          u+03C0                   F0
//       Ρ                          u+03A1                   D1
//       ρ                          u+03C1                   F1
//       Σ                          u+03A3                   D3
//       σ                          u+03C3                   F3
//       ς                          u+03C2                   F2
//       Τ                          u+03A4                   D4
//       τ                          u+03C4                   F4
//       Υ                          u+03A5                   D5
//       υ                          u+03C5                   F5
//       Φ                          u+03A6                   D6
//       φ                          u+03C6                   F6
//       Χ                          u+03A7                   D7
//       χ                          u+03C7                   F7
//       Ψ                          u+03A8                   D8
//       ψ                          u+03C8                   F8
//       Ω                          u+03A9                   D9
//       ω                          u+03C9                   F9

Si les conversion des données seront disponibles uniquement dans les blocs séquentiels (comme les données lues à partir d'un flux) ou si la quantité de données est si grande qu'elle doit être divisée en blocs plus petits, vous devez utiliser le Decoder ou le Encoder fournis par le GetDecoder (méthode) ou GetEncoder (méthode), respectivement, d'une classe dérivée.

Le format UTF-16 et les encodeurs UTF-32 peuvent utiliser l'ordre avec primauté des octets (octet le plus significatif premier) ou l'ordre avec primauté des octets (octet le moins significatif premier). Par exemple, la lettre majuscule latine A (U + 0041) est sérialisée comme suit (en hexadécimal) :

  • Ordre d'UTF-16 avec primauté des octets : 00 41

  • Ordre de primauté des octets little UTF-16 : 41 00

  • Ordre de UTF-32 avec primauté des octets : 00 00 00 41

  • Ordre de primauté des octets little UTF-32 : 41 00 00 00

Il est généralement plus efficace pour stocker des caractères Unicode à l'aide de l'ordre d'octet natif. Par exemple, il est préférable d'utiliser l'ordre avec primauté des octets sur les plateformes little-endian, tels que les ordinateurs Intel.

Le GetPreamble méthode récupère un tableau d'octets contenant la marque d'ordre octet (BOM). Si ce tableau d'octets est préfixé à un flux codé, il aide le décodeur à identifier le format d'encodage utilisé.

Pour plus d'informations sur l'ordre d'octet et la marque d'ordre, consultez la norme Unicode sur la Unicode home page.

Notez que les classes d'encodage autorisent des erreurs pour :

  • Changer silencieusement en un «? » caractères.

  • Utilisez un caractère « ajustement optimal ».

  • Passez à un comportement spécifique à l'application à l'aide de la EncoderFallback et DecoderFallback des classes avec le caractère de remplacement Unicode U + FFFD.

Vous devez lever une exception en cas d'erreur de flux de données. Une application utilise un indicateur « throwonerror » lorsqu'elle est applicable ou les EncoderExceptionFallback et DecoderExceptionFallback classes. Secours le mieux adapté n'est pas souvent recommandé car il peut entraîner une perte de données ou confusion et est plus lent que les simples remplacements de caractères. Pour les encodages ANSI, le comportement le mieux adapté est la valeur par défaut.

L'exemple suivant convertit une chaîne depuis un encodage vers un autre.

System_CAPS_noteRemarque

Le tableau byte [] est le seul type dans cet exemple qui contient les données encodées. Les types .NET Char et String sont eux-mêmes Unicode, donc la GetChars appel décode les données en Unicode.

using System;
using System.Text;

class Example
{
   static void Main()
   {
      string unicodeString = "This string contains the unicode character Pi (\u03a0)";

      // Create two different encodings.
      Encoding ascii = Encoding.ASCII;
      Encoding unicode = Encoding.Unicode;

      // Convert the string into a byte array.
      byte[] unicodeBytes = unicode.GetBytes(unicodeString);

      // Perform the conversion from one encoding to the other.
      byte[] asciiBytes = Encoding.Convert(unicode, ascii, unicodeBytes);

      // Convert the new byte[] into a char[] and then into a string.
      char[] asciiChars = new char[ascii.GetCharCount(asciiBytes, 0, asciiBytes.Length)];
      ascii.GetChars(asciiBytes, 0, asciiBytes.Length, asciiChars, 0);
      string asciiString = new string(asciiChars);

      // Display the strings created before and after the conversion.
      Console.WriteLine("Original string: {0}", unicodeString);
      Console.WriteLine("Ascii converted string: {0}", asciiString);
   }
}
// The example displays the following output:
//    Original string: This string contains the unicode character Pi (Π)
//    Ascii converted string: This string contains the unicode character Pi (?)

Universal Windows Platform
Disponible depuis 8
.NET Framework
Disponible depuis 1.1
Portable Class Library
Pris en charge dans : portable .NET platforms
Silverlight
Disponible depuis 2.0
Windows Phone Silverlight
Disponible depuis 7.0
Windows Phone
Disponible depuis 8.1

Tous les membres statiques (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Retour au début
Afficher: