Encodage inconnu
J'extrais le passage suivant d'un message envoyé par une liste de
diffusion :
La principale nouveaut� est la d�couverte
du
r�le central que joue la notion
math�matique
de complexit�, qui semble spontan�ment
mesur�e
par les �tres humains. Une situation
appara�t
comme pertinente d�s lors qu'elle est
moins
"complexe" que pr�vu.
Voyez-vous une raison possible à cette anomalie ?
Je cherche à redonner à ce texte une forme acceptable en essayant de le
sauvegarder dans un codage autre qu'UTF-8,
mais mon éditeur refuse cette opération. Quelle peut
être la cause de ce refus ?
En général, quand on demande à
recoder un fichier, l'éditeur affiche la liste des codages possibles.
En l'occurrence, avec TextEdit cette liste ne contient qu'UTF-8, UTF-16 et des codages
chinois.
Tout simplement parce que, selon TextEdit, le fichier contient des octets qui
ne sont compatibles qu'avec ces codages.
Notons qu'un autre éditeur peut avoir un autre jugement : TextWrangler accepte de recoder le fichier sans restriction,
en Latin-1 comme en MacRoman, mais dans les deux cas il produit un octet "1A
" qui ne figure dans aucun de ces jeux de caractères...
Il y a donc bien un problème dans ce fichier !
Pour en avoir le cœur net, j'examine le texte avec hexdump
:
00000000 4c 61 20 70 72 69 6e 63 69 70 61 6c 65 20 6e 6f |La principale no|
00000010 75 76 65 61 75 74 ef bf bd 20 65 73 74 20 6c 61 |uveaut� est la|
00000020 20 64 ef bf bd 63 6f 75 76 65 72 74 65 20 64 75 | d�couverte du|
00000030 20 0d 20 20 20 20 72 ef bf bd 6c 65 20 63 65 6e | . r�le cen|
00000040 74 72 61 6c 20 71 75 65 20 6a 6f 75 65 20 6c 61 |tral que joue la|
00000050 20 6e 6f 74 69 6f 6e 20 6d 61 74 68 ef bf bd 6d | notion math�m|
00000060 61 74 69 71 75 65 0d 20 20 20 20 64 65 20 63 6f |atique. de co|
00000070 6d 70 6c 65 78 69 74 ef bf bd 2c 20 71 75 69 20 |mplexit�, qui |
00000080 73 65 6d 62 6c 65 20 73 70 6f 6e 74 61 6e ef bf |semble spontan?|
00000090 bd 6d 65 6e 74 20 6d 65 73 75 72 ef bf bd 65 0d |?ment mesur�e.|
000000a0 20 20 20 20 70 61 72 20 6c 65 73 20 ef bf bd 74 | par les �t|
000000b0 72 65 73 20 68 75 6d 61 69 6e 73 2e 20 55 6e 65 |res humains. Une|
000000c0 20 73 69 74 75 61 74 69 6f 6e 20 61 70 70 61 72 | situation appar|
000000d0 61 ef bf bd 74 20 0d 20 20 20 20 63 6f 6d 6d 65 |a�t . comme|
000000e0 20 70 65 72 74 69 6e 65 6e 74 65 20 64 ef bf bd | pertinente d�|
000000f0 73 20 6c 6f 72 73 20 71 75 27 65 6c 6c 65 20 65 |s lors qu'elle e|
00000100 73 74 20 6d 6f 69 6e 73 0d 20 20 20 20 22 63 6f |st moins. "co|
00000110 6d 70 6c 65 78 65 22 20 71 75 65 20 70 72 ef bf |mplexe" que pr?|
00000120 bd 76 75 2e |?vu.|
00000124
Ai-je quelque espoir de retrouver le texte
original ?
Hélas non ! Car notre outil fidèle nous révèle la présence de triplets d'octets "ef bf bd
",
à raison d'un pour chaque point d'interrogation affiché.
D'une part ces triplets représentent en UTF-8 le caractère Unicode n° xFFFD
, qui symbolise l'erreur
(à telle enseigne que les éditeurs refusent de le recoder, d'où les comportements bizarres évoqués précédemment).
D'autre part, sa présence montre que le fichier était corrompu avant son envoi :
ce n'est pas le processus de transmission qui a pu le faire apparaître, mais un traitement préalable,
au niveau de la liste de diffusion.
En tout état de cause, l'information sur les différentes lettres accentuées qui se trouvaient dans le texte original
est perdue, puisque les caractères correspondants ont tous été remplacés par ce "super point d'interrogation"
qu'est U+FFFD
.