Encodeur / décodeur d’échappements Unicode
Convertissez des caractères en échappements \uXXXX et inversement, avec les paires de substitution correctes pour les emoji et caractères hors plan supplémentaire — plus point de code, octets UTF-8 et unités UTF-16 par caractère.
| Caractère | Point de code | octets UTF-8 | unités UTF-16 |
|---|---|---|---|
| 你 | U+4F60 | 0xE4 0xBD 0xA0 | U+4F60 |
| 好 | U+597D | 0xE5 0xA5 0xBD | U+597D |
| , | U+002C | 0x2C | U+002C |
| U+0020 | 0x20 | U+0020 | |
| 😀 | U+1F600 | 0xF0 0x9F 0x98 0x80 | U+D83D |
| U+0020 | 0x20 | U+0020 | |
| A | U+0041 | 0x41 | U+0041 |
Qu’est-ce que c’est
Chaque caractère vit sur une position numérotée : A est U+0041, 中 est U+4E2D. En JavaScript, on les écrit sous forme d’échappements \uXXXX. L’astuce : les emoji et caractères rares vivent au-delà des 65536 premières cases, donc un emoji n’est pas un \uXXXX mais une paire, appelée paire de substitution : le smiley devient \uD83D\uDE00. Cet outil gère les deux plans correctement et montre le point de code, les octets UTF-8 et les unités UTF-16 de chaque caractère.
Notes et anecdotes
Pourquoi un smiley prend-il deux échappements ? Parce que le système a été conçu quand 65536 cases paraissaient infinies, et les emoji sont arrivés des décennies plus tard. Les ingénieurs ont alors posé un rustine : réserver la plage D800–DFFF. Un substitut haut suivi d’un substitut bas désigne un seul grand caractère. La rustine a si bien fonctionné que personne n’ose l’enlever aujourd’hui.
Origine et histoire
Le Consortium Unicode a publié la première version de la norme Unicode en octobre 1991. La version 2.0 (juillet 1996) a porté la limite à plus d’un million de positions et introduit l’UTF-16 avec les paires de substitution, sous la direction de Peter Hartke et du Comité technique Unicode — c’est pourquoi les emoji forment aujourd’hui toujours deux échappements.
Mots-clés associés
Retour
Un problème avec un outil ou une suggestion ? Envoyez-nous un e-mail — nous lisons chaque message.
