J'ai un texte encodé en ANSI:
Lorsque j'ai essayé de le convertir en UTF-8 (en utilisant le menu Notepad ++ Encoding> UTF-8), j'obtiens des caractères étranges:
Je pensais que UTF-8 était un surensemble de ANSI et que par la suite je n'aurais pas de tels problèmes. Existe-t-il de toute façon que je peux éviter l'apparition de ces personnages étranges?
notepad++
character-encoding
utf-8
ansi
user3658425
la source
la source
Réponses:
UTF-8 n'est pas un jeu de caractères, juste un encodage pour Unicode. Les 128 premiers caractères sont identiques à ASCII mais diffèrent dans les 128 octets élevés. Un octet avec le bit élevé défini (ou> = 0x80) est un caractère étendu en ASCII tandis qu'en UTF-8, il indique l'octet de début d'une séquence multi-octets. C'est le cas de 0x93 ou 0x94 ci-dessus. Cependant, je ne vois rien d'étrange dans le fichier. Ce sont des citations intelligentes ou des citations avec différents formulaires pour ouvrir et fermer des citations, que vous voyez souvent lorsque vous utilisez un éditeur de texte enrichi tel que MS Word
modifier
La question a été modifiée. Je pense que c'est parce que vous avez choisi le mauvais outil. Les
encode
éléments de menu permettent de modifier l'encodage si vous avez des affichages de caractères incorrects. Il traite simplement la même séquence d'octets lue sur le disque comme un autre encodage. Comme ASCII et UTF-8 sont différents, vous aurez une séquence d'octets UTF-8 mal formée et vous verrez le résultat ci-dessus. Vous devez choisirconvert to UTF-8
pour cela de modifier l'ensemble des octets d'entréeVous avez également confondu ANSI et ASCII. ANSI fait souvent référence à Windows-1252, qui est un jeu de caractères utilisé dans Windows anglais et certaines langues d'Europe occidentale. Il s'agit d'un sur-ensemble de l'ISO 8859-1, bien que l'ISO 8859-1 puisse également être appelé ANSI. ISO 8859-1 est également le premier 256 points de code d'Unicode, c'est donc un sous-ensemble d'Unicode, mais il n'est pas compatible avec le codage UTF-8. ASCII est un jeu de caractères 7 bits et est un sous-ensemble de l'ANSI qui est codé sur 8 bits, mais il est aussi parfois appelé ANSI, bien que pas très correct
https://en.wikipedia.org/wiki/ANSI_character_set
En général, la relation entre les jeux de caractères est la suivante
la source