2017-07-28 2 views
0

J'ai une zone de texte en C# et j'attends des caractères anglais ou grecs. Je ne peux pas afficher correctement les caractères grecs. Je suis convertion de l'encodage à la page de code 1253 comme suit:Comment modifier l'encodage de la valeur de la zone de texte

byte[] responseBytes = Encoding.GetEncoding(1253).GetBytes(myTextBox.Text); 
message = Encoding.GetEncoding(1253).GetString(responseBytes); 

Le résultat est pas prévu un pour les caractères grecs (aucun problème avec les anglais). Étant donné que le caractère 'τ' apparaît comme 'Δ', le caractère 'υ' apparaît comme 'Ε', etc. En regardant dans le codepage table, il semble que la conversion corresponde au caractère F_1 à C_1, F_2 à C_2, etc. Quelque chose ne va pas dans la façon dont je convertis l'encodage?

Répondre

0

Vous pouvez regarder Unicode (UTF-8) comme affichage et encodage de stockage. Je crois que cela va gérer à peu près tout.

+0

J'ai changé le codage en UTF-8 et le résultat est le même. '' ψωχτ "est affiché comme" ΘΙΗΔ " – ginou

+0

Est-ce que c'est après avoir stocké la chaîne quelque part? Si oui, où? DB? Fichier? Quel est le codage de table/fichier? – Lucas

+0

Je montre la chaîne sur un pinpad. côté, je l'ai correctement configuré pour afficher les caractères ASCII étendus – ginou