19 votes

Le trait d'union ne s'affiche pas correctement dans Notepad++

Je suis sûr que c'est un problème d'encodage, mais je n'arrive pas à le résoudre.

J'ai exporté une feuille de calcul Excel en CSV UTF-8. Cela a produit un fichier CSV encodé en UTF-8-BOM. En ouvrant ce fichier dans Notepad++, la plupart des caractères étaient rendus correctement - y compris les caractères non ANSI comme ø. Cependant, un trait d'union ( ) s'affiche en .

Je pense que le caractère est U+2010 HYPHEN.

Si j'ouvre le fichier dans Notepad, le trait d'union s'affiche correctement. Il s'affiche également correctement si j'utilise Vim pour lire le fichier ou cat pour l'afficher dans le terminal.

Enfin, le dump octal du fichier révèle les octets hexadécimaux e2 80 90, qui est l'encodage UTF-8 du caractère Unicode U+2010 - HYPHEN.

Alors pourquoi Notepad++ affiche-t-il ce caractère en ?

22voto

flahr Points 336

Si d'autres caractères sont décodés correctement et que les données au niveau des octets semblent correctes, il est possible que le problème se situe simplement au niveau de la police de caractères. U+2010 est assez haut placé pour que certaines polices ne disposent pas d'un glyphe disponible.

Cette réponse à une autre question de Super User indique que plusieurs polices courantes de Windows 7 ne disposent pas du glyphe pour HYPHEN.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X