IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Explication sur l'Encoding


Sujet :

C#

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2002
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 190
    Par défaut Explication sur l'Encoding
    Bonjour,

    J'ai pris un exemple dans la "FAQ C#" et j'aimerais quelques explications.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Byte[] objBytes = System.Text.Encoding.GetEncoding(1251).GetBytes("éèë");
    Console.Writeline(System.Text.Encoding.ASCII.GetString(objBytes));
    Cela me donne:
    eee
    Et j'avoue ne pas comprendre !
    En effet si je regarde la table des caractères de la page spécifié (1251) : http://www.microsoft.com/globaldev/r...sbcs/1251.mspx
    on peut voir qu'il n'y a pas de caractères accentués alors comment peut-il me faire traduction en caractère non accentuée ?

    Merci de m'apporter vos lumières, car j'aimerai bien comprendre !

  2. #2
    Rédacteur
    Avatar de Paul Musso
    Profil pro
    Inscrit en
    Août 2008
    Messages
    368
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2008
    Messages : 368
    Par défaut
    Bonjour,

    Je viens de regarder le tableau de Byte[] généré, et effectivement, il ne contient que valeurs égales à 101. A priori, la méthode GetBytes doit récupérer la valeur du caractère le plus proche de celui que tu as donné s'il n'existe pas dans l'encodage.

    Tu trouveras plus d'infos ici.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2002
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Avril 2002
    Messages : 190
    Par défaut
    Oui c'est très étrange !
    D'autant plus qu'ils ne fournissent pas la règle qui leurs permettent de choisir le caractère le plus proche !!!

  4. #4
    Membre expérimenté
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Par défaut
    Ce sera peut être un hors sujet, mais si à la base tu cherchais une méthode pour retirer les accents d'une chaîne (on peut le supposer, voici une méthode qui ne joue pas avec l'encoding
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    string normalizedString = chaineAvecAccents.Normalize(NormalizationForm.FormD);
    StringBuilder stringBuilder = new StringBuilder(s.Length);
     
    foreach (char c in normalizedString)
    {
        if (CharUnicodeInfo.GetUnicodeCategory(c) != UnicodeCategory.NonSpacingMark)
        {
            stringBuilder.Append(c);
        }
    }
     
    string result = stringBuilder.ToString().Normalize(NormalizationForm.FormC);

Discussions similaires

  1. [Multimédia] Explication sur stream audio
    Par champion dans le forum Développement
    Réponses: 1
    Dernier message: 20/01/2005, 12h14
  2. Besoin d'explications sur float et l'élasticité !
    Par KneXtasY dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 14/01/2005, 15h15
  3. s.v.p :explication sur le ".h" et dll de l'opengl
    Par Asmod_D dans le forum OpenGL
    Réponses: 1
    Dernier message: 22/11/2004, 10h32
  4. Réponses: 28
    Dernier message: 18/08/2003, 11h54
  5. recherches des cours ou des explications sur les algorithmes
    Par Marcus2211 dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 19/05/2002, 22h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo