Probleme encodage texte

Fermé
paspas - 16 oct. 2012 à 08:48
Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 - 16 oct. 2012 à 21:38
Bonjour,

je suis programmeur amateur et je ne programme que sur mes soft de dessin afin de réaliser des plugins

fonctionnement du plug : le but est de récupérer sur mon projet tout les textes qui s'y trouve et de les copier dans un fichier texte a part puis de les corriger ou les modifier et ensuite de les réinjecter dans le projet au bon endroit .

le plug fonctionne sauf que :

il récupéré bien les texte et les son encoder dans le fichier texte ( je précise que le fichier texte est crée par le soft de dessin et lu ensuite avec le notepad.

le souci est dans la récupération les é devient É , le à devient Í et ainsi de suite

tout les caractère à accent ne corresponde pas ( tout ce qui est après 127 en ascii )

je pense que le soft travaille en iso 8859 -1 si j' en croit le sdk ( en anglais -> mon incertitude)

j' ai regarder les codes ascii que me donne mon soft pour iso 8859 -1 il sont bon mais les caractères qu' il affiche sont pas bon.

quelle est l' encodage du notepad sur win XP ?

et y ' a t' il un moyen de convertir par programmation ce type d'encodage ?

d' avance merci

1 réponse

Hxyp Messages postés 401 Date d'inscription vendredi 28 janvier 2011 Statut Membre Dernière intervention 27 avril 2014 54
Modifié par Hxyp le 16/10/2012 à 21:47
Bonjour, le blocnote sous xp avec ANSI utilise les code-page, si xp est configuré avec pour langue le japonais il utilisera le code-page 932 d'ailleurs on peut lire sur wiki "In Japanese editions of Windows, this code page is referred to as "ANSI", since it is the operating system's default 8-bit encoding, even though ANSI was not involved in its definition."... voilà et donc code-page pour le français le 863, l'anglais 850, etc.
Ça doit aussi dépendre car le code-page doit être utilisé uniquement si la langue en question contient des caractères qui ne se trouvent pas dans l'ANSI (code-page 1252 pour microsoft) comme le russe, jap etc donc voir cette table pour les caractères dans le blocnote d'xp en français http://ascii-table.com/ansi-codes.php
Pouvez convertir si vous connaissez les deux types d'encodage en question, trouvez leur "table d'encodage" (table de caractères avec code) et effectuez les conversion.
Mais le "é" en iso 8859-1 = 0xE9, 233 https://en.wikipedia.org/wiki/ISO/IEC_8859-1 et en ANSI/codepage 1252 c'est la même chose, devrait pas y avoir de problème normalement entre les deux. Bon courage.

Edit : on peut lire à la fin du premier lien "The source of this comes from the fact that the Windows code page 1252 was originally based on an ANSI draft, which became ISO Standard 8859-1."
Donc conclusion on peut dire que l'encodage dans le bloc note de windows xp en français est du iso 8859-1
0