Table de référence Unicode/code de caractère
Outil gratuit qui affiche, pour un caractère saisi, son point de code Unicode, sa séquence d'octets UTF-8 et ses représentations d'échappement JavaScript/HTML/URL/CSS, le tout comparé côte à côte. Tout s'exécute dans le navigateur.
Table de référence des caractères courants
| Caractère | Point de code | UTF-8 | Remarque |
|---|---|---|---|
| A | U+0041 | 41 | Lettre majuscule (ASCII, 1 octet) |
| 0 | U+0030 | 30 | Chiffre (ASCII, 1 octet) |
| ␣ | U+0020 | 20 | Espace (ASCII, 1 octet) |
| ! | U+0021 | 21 | Point d'exclamation (symbole ASCII, 1 octet) |
| @ | U+0040 | 40 | Arobase (symbole ASCII, 1 octet) |
| © | U+00A9 | C2 A9 | Symbole du copyright (supplément Latin-1, 2 octets) |
| € | U+20AC | E2 82 AC | Symbole euro (3 octets) |
| → | U+2192 | E2 86 92 | Flèche vers la droite (bloc des flèches, 3 octets) |
| あ | U+3042 | E3 81 82 | Caractère hiragana (3 octets) |
| 漢 | U+6F22 | E6 BC A2 | Idéogramme unifié CJC (3 octets) |
| 한 | U+D55C | ED 95 9C | Syllabe hangeul (3 octets) |
| 😀 | U+1F600 | F0 9F 98 80 | Émoji (hors du BMP, 4 octets, encodé en paire de substitution en JS) |
Ce que fait ce convertisseur de code de caractère Unicode
Cet outil prend n'importe quel caractère que vous saisissez et affiche simultanément sept représentations de code différentes, comparées côte à côte : son point de code Unicode, sa séquence d'octets UTF-8, son échappement JavaScript, son entité HTML (décimale et hexadécimale), son encodage pourcentage URL et son échappement CSS. Chaque conversion — du caractère vers le point de code, puis du point de code vers chaque représentation en octets — est calculée instantanément dans votre navigateur au fur et à mesure de la saisie, sans qu'aucune donnée ne soit envoyée à un serveur.
Une subtilité à connaître : de nombreux émojis ont un point de code situé en dehors du plan multilingue de base d'Unicode (BMP, U+0000-U+FFFF), si bien que les chaînes JavaScript les représentent en interne sous forme de paire de substitution — deux unités de code de 16 bits au lieu d'une seule. Cet outil utilise `codePointAt` en interne afin qu'une paire de substitution soit toujours résolue en un seul point de code correct, ce qui garantit des résultats précis pour les émojis plutôt que deux demi-caractères séparés. Si vous saisissez plusieurs caractères, chacun reçoit son propre bloc de résultat.
Comment utiliser ce convertisseur Unicode
- Saisissez le caractère à rechercher Entrez n'importe quelle lettre, symbole ou émoji dans le champ de saisie. Vous pouvez aussi coller plusieurs caractères à la fois.
- Consultez le bloc de résultat de chaque caractère Une carte distincte apparaît pour chaque caractère saisi, affichant les sept représentations de code.
- Repérez la représentation dont vous avez besoin Parcourez les lignes jusqu'au format qui correspond à votre tâche : point de code, octets UTF-8, échappement JavaScript, etc.
- Copiez la valeur avec le bouton copier Cliquez sur le bouton copier à côté d'une ligne pour envoyer uniquement cette valeur dans le presse-papiers, prête à être collée dans votre code.
- Essayez un autre caractère Modifiez le champ de saisie ou cliquez sur « Effacer » pour repartir de zéro, puis saisissez le prochain caractère à vérifier.
Astuces pour en tirer le meilleur parti
- Vous pouvez saisir plusieurs caractères ; chacun reçoit son propre bloc de résultat sous le champ de saisie.
- Les émojis comme 😀 se situent en dehors du plan multilingue de base d'Unicode (BMP, U+0000-U+FFFF), donc les chaînes JavaScript les représentent en interne avec deux unités de code (une paire de substitution) ; c'est pourquoi la ligne « Échappement JavaScript » affiche deux séquences `\uXXXX`.
- Un échappement CSS comme `\41` écrit le point de code en hexadécimal sans aucun préfixe. Ajoutez une espace finale si le caractère suivant risque d'être interprété comme faisant partie des chiffres hexadécimaux.
- Les navigateurs traitent de façon identique les entités HTML décimales (
A) et hexadécimales (A) ; utilisez celle qui convient le mieux à votre balisage. - Utilisez le bouton copier sur chaque ligne pour envoyer directement une valeur dans le presse-papiers et la coller dans du code ou du CSS.
Dans quels cas cet outil est utile
Diagnostiquer du texte corrompu ou mal encodé
Lorsqu'un programme ou une base de données affiche un caractère inattendu, comparer le point de code réel et les octets UTF-8 aide à déterminer si un décalage d'encodage en est la cause.
Vérifier comment les émojis sont encodés
Voyez en un coup d'œil combien d'unités de code un émoji nécessite en tant que paire de substitution en JavaScript, et combien d'octets il occupe en UTF-8.
Vérifier le stockage des caractères en base de données
Utile lorsque vous devez savoir à l'avance combien d'octets un caractère donné occupera, par exemple pour décider si une colonne MySQL nécessite utf8mb4.
Intégrer des caractères spéciaux en HTML ou CSS
Récupérez l'entité HTML ou l'échappement CSS correct pour un symbole ou un caractère d'une autre langue, et collez-le directement dans votre balisage ou votre feuille de style.
Valider l'encodage d'une URL
Vérifiez que les paramètres de requête contenant des caractères non ASCII ou des symboles sont encodés en pourcentage comme prévu avant d'envoyer une requête.
Glossaire
- Unicode
- Une norme internationale d'encodage des caractères qui attribue un numéro unique — un point de code — à chaque caractère utilisé dans le monde, dans le but d'éviter les caractères corrompus entre langues.
- Point de code
- Le numéro qu'Unicode attribue à un caractère, écrit sous la forme
U+0041: un nombre hexadécimal précédé du préfixe « U+ » qui identifie précisément de quel caractère il s'agit. - UTF-8
- Un schéma d'encodage précis permettant de stocker ou de transmettre des points de code Unicode sous forme d'octets. Il utilise de 1 à 4 octets de longueur variable par caractère et reste totalement compatible avec ASCII, ce qui explique sa domination sur le web.
- UTF-16
- Un schéma d'encodage qui représente les points de code Unicode sous forme d'unités de 16 bits (unités de code). Les chaînes JavaScript utilisent cet encodage en interne.
- Paire de substitution
- Une combinaison de deux unités de code utilisée en UTF-16 pour représenter un point de code situé au-delà du plan multilingue de base (BMP). La plupart des émojis nécessitent une paire de substitution.
- BMP (plan multilingue de base)
- La plage des points de code Unicode allant de U+0000 à U+FFFF. Les caractères de cette plage peuvent être représentés par une seule unité de code UTF-16.
- Entité HTML
- Une façon d'écrire des caractères spéciaux en toute sécurité dans un balisage HTML, comme
A(décimal) ouA(hexadécimal). - Encodage pourcentage
- Un schéma qui convertit les caractères non autorisés dans une URL en octets UTF-8 et écrit chaque octet sous la forme
%XX. Couramment utilisé pour du texte non ASCII dans les URL.
Questions fréquentes
A (décimal) ou A (hexadécimal, avec préfixe `x`) et ne fonctionne qu'à l'intérieur d'un balisage HTML. Un échappement CSS s'écrit `\41` — uniquement des chiffres hexadécimaux, sans préfixe `U+` ni `x` — et s'utilise dans les sélecteurs ou les valeurs de propriétés CSS. Veillez à utiliser le format adapté au contexte dans lequel vous travaillez.
Anecdote — Comment Unicode a unifié un monde fragmenté d'encodages de caractères
Avant l'existence d'Unicode, les encodages de caractères variaient énormément d'un pays à l'autre, et même d'une langue à l'autre. Le seul texte japonais comptait plusieurs schémas concurrents — Shift_JIS, EUC-JP et le code JIS, entre autres — et l'échange de texte entre systèmes utilisant des encodages différents produisait fréquemment des caractères corrompus et illisibles. Unicode 1.0, publié en 1991, s'est donné pour objectif de résoudre ce chaos en attribuant un point de code unique à chaque caractère utilisé n'importe où dans le monde.
Unicode et la norme internationale ISO/IEC 10646 ont d'abord été développés de façon quelque peu indépendante, avant d'être coordonnés pour partager le même répertoire de caractères et les mêmes attributions de points de code. Aujourd'hui, Unicode couvre bien plus de 150 000 caractères, émojis compris, et une nouvelle version est publiée chaque année pour en ajouter davantage.
UTF-8 a été conçu en 1992 par Ken Thompson et Rob Pike. Sa grande avancée a été de maintenir une compatibilité totale avec le texte ASCII pur tout en étant capable de représenter n'importe quel caractère Unicode — une conception qui s'est révélée exactement ce dont le web avait besoin, et qui est depuis devenue l'encodage standard de facto pour les documents sur internet.