Convertisseur Unicode

Échappez le texte sous forme de séquences JavaScript \uXXXX / \u{HEX}, décodez les échappements mixtes en texte, et inspectez chaque caractère en tant que point de code : U+ hexadécimal, décimal, octets UTF-8, unités UTF-16 et échappements JS. Les points de code astraux (emoji) ne sont jamais coupés en moitiés de substitution.
Tout le traitement s’effectue localement dans votre navigateur — vos données ne sont jamais envoyées à un serveur.
Style d’échappement :
Encoder : le texte est découpé en points de code Unicode (les emoji restent intacts) et chacun est écrit sous forme de séquence d’échappement JavaScript.
Décoder : chaque séquence \uXXXX, \u{hex} ou U+hex (en majuscules ou minuscules) est convertie en son caractère. Les échappements de paires de substitution adjacentes sont fusionnés en un seul point de code. Le texte non échappé est conservé tel quel.
Inspecteur : chaque point de code devient une ligne séparée par des tabulations : caractère, U+hex, décimal, octets UTF-8, unités UTF-16 et échappement JS. Le tableau complet peut être copié depuis la sortie ou téléchargé.
Ctrl+Entrée dans la saisie lance le mode actif.
Choisissez Encoder, Décoder ou Inspecteur et lancez-le. Tout le traitement reste dans votre navigateur.
Lire les colonnes de l’inspecteur :
U+HEX est le point de code en hexadécimal ; décimal est le même nombre en base 10. Octets UTF-8 indique le ou les un à quatre octets qu’occupe le caractère lorsqu’il est écrit en UTF-8 (par ex. 中 = E4 B8 AD). UTF-16 indique la ou les deux unités de 16 bits que le caractère utilise dans une chaîne JavaScript (les emoji au-delà de U+FFFF demandent deux unités, une « paire de substitution » : par ex. U+1F600 = D83D DE00). Échappement JS est la forme recommandée du caractère dans le code source.
Ce que charge le bouton Exemple :
L’exemple correspond au mode dans lequel vous êtes, jamais à un texte fixe, car un seul texte ne peut pas servir aux trois modes. Encoder et Inspecteur prennent des caractères bruts, ils reçoivent donc Hello 中文! 🎉 — de l’ASCII, du CJK, une marque pleine chasse et un emoji. Décoder prend des séquences d’échappement, et une phrase ordinaire n’en contient aucune : elle serait renvoyée mot pour mot et le mode n’aurait rien à montrer ; Décoder reçoit donc Say \u4e2d\u6587 \u{1F600} U+0041 \uD83C\uDF89 OK, qui contient une forme de chaque élément accepté par le décodeur (une paire \uXXXX en minuscules, une accolade \u{HEX}, une forme U+hex, une paire de substitution adjacente, et des mots qui ne sont pas des échappements). La ligne sous les zones indique le résultat à rechercher ; en mode Encoder, elle suit aussi le style d’échappement et la case ASCII, de sorte que les trois autres styles peuvent être vus en appuyant de nouveau sur Exemple.
Qu’est-ce qu’Unicode ?

Unicode est un catalogue unique qui attribue à chaque caractère de chaque système d’écriture un numéro, son point de code, de U+0000 à U+10FFFF — 1 114 112 emplacements possibles répartis en 17 plans de 65 536. Le premier plan, le plan multilingue de base (BMP), contient les caractères de la plupart des langues vivantes ; la plupart des emoji et de nombreuses écritures historiques se trouvent sur les plans supérieurs (dits « astraux »).

UTF-8, UTF-16 et UTF-32 ne sont pas des jeux de caractères concurrents, mais trois façons de sérialiser ces nombres en octets — le mode Inspecteur montre les trois pour un même caractère, à côté des formes d’échappement JavaScript.

Unicode nomme et numérote les caractères ; UTF-8/UTF-16/UTF-32 et les échappements \uXXXX ne sont que différentes façons d’écrire les mêmes nombres.