Skip to main content
Best Emojis

Convertisseur d'emoji vers Unicode

Collez un emoji, ou une phrase entière qui en contient, et obtenez tous les formats dont un développeur a besoin : points de code Unicode, entités HTML, échappements CSS et JavaScript, Python et octets UTF-8 bruts. L'outil fonctionne aussi dans l'autre sens. Tout s'exécute dans votre navigateur, et le compteur de longueur montre pourquoi un seul emoji peut compter sept caractères dans un langage et vingt-huit octets dans un autre.

Caractères visibles
3
Points de code (len de Python)
6
Unités UTF-16 (.length en JS)
10
Octets UTF-8
22
Points de code UnicodeU+1F44D U+1F3FD U+2764 U+FE0F U+1F1EF U+1F1F5
Entité HTML (hexadécimale)👍🏽❤️🇯🇵
Entité HTML (décimale)👍🏽❤️🇯🇵
Propriété CSS content\1F44D \1F3FD \2764 \FE0F \1F1EF \1F1F5
JavaScript (ES6)\u{1F44D}\u{1F3FD}\u2764\uFE0F\u{1F1EF}\u{1F1F5}
UTF-16 (Java, C#, JSON)\uD83D\uDC4D\uD83C\uDFFD\u2764\uFE0F\uD83C\uDDEF\uD83C\uDDF5
Python\U0001F44D\U0001F3FD\u2764\uFE0F\U0001F1EF\U0001F1F5
Octets UTF-8F0 9F 91 8D F0 9F 8F BD E2 9D A4 EF B8 8F F0 9F 87 AF F0 9F 87 B5
Encodage URL%F0%9F%91%8D%F0%9F%8F%BD%E2%9D%A4%EF%B8%8F%F0%9F%87%AF%F0%9F%87%B5

Huit emojis, quatre longueurs différentes

Chaque ligne ci-dessous correspond à un seul emoji à l'écran. Les autres colonnes indiquent ce que comptent différents langages et bases de données, calculé par le même convertisseur que l'outil ci-dessus.

EmojiPoints de codeVisiblesPythonJavaScriptOctets UTF-8
😀Un seul point de codeU+1F6001124
❤️Symbole texte et sélecteur de styleU+2764 U+FE0F1226
👍🏽Emoji et teintU+1F44D U+1F3FD1248
🇯🇵Deux lettres d'indicateur régionalU+1F1EF U+1F1F51248
👩‍💻Assemblé par un liant sans chasseU+1F469 U+200D U+1F4BB13511
1️⃣Chiffre, sélecteur et toucheU+0031 U+FE0F U+20E31337
🏴󠁧󠁢󠁳󠁣󠁴󠁿Séquence de balisesU+1F3F4 U+E0067 U+E0062 U+E0073 U+E0063 U+E0074 U+E007F171428
🫺Emoji 18.0 (2026)U+1FAFA1124

Pourquoi un emoji peut faire sept caractères

Les points de code sont les numéros qu'attribue Unicode, et un emoji peut en assembler plusieurs. Le drapeau de l'Écosse en est l'exemple le plus parlant : un drapeau noir, cinq lettres de balise invisibles qui épellent gbsct et une balise d'annulation, soit sept points de code en tout. JavaScript stocke le texte en UTF-16, où tout ce qui dépasse U+FFFF occupe deux unités : ce même drapeau a donc une .length de 14. UTF-8 consacre quatre octets à chacun de ces points de code, si bien qu'il occupe 28 octets dans une base de données. Un seul de ces nombres correspond à ce que voit une personne, et c'est justement celui que la plupart des programmes ne demandent jamais. En JavaScript, comptez avec Intl.Segmenter en réglant la granularité sur grapheme ; en Python, le motif \X du module tiers regex fait le même travail.

Stocker des emojis dans MySQL sans points d'interrogation

Si vos emojis se transforment en ???? après l'enregistrement, la colonne utilise presque certainement le jeu de caractères utf8 de MySQL, qui, malgré son nom, stocke au maximum trois octets par caractère. Tout emoji au-delà de U+FFFF en demande quatre : l'insertion échoue ou perd les données. La solution s'appelle utf8mb4 : convertissez la table avec ALTER TABLE ... CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci, et vérifiez que la connexion elle-même utilise aussi utf8mb4, car une table correcte derrière une connexion utf8 abîme quand même le texte. MySQL 8.0 a fait d'utf8mb4 le réglage par défaut : le problème touche donc surtout les vieilles bases mises à niveau plutôt que créées de zéro.

Entités HTML, CSS et l'espace final

Sur une page servie en UTF-8, c'est-à-dire presque toutes, vous pouvez coller l'emoji directement dans le HTML ; les entités comme 👍 ne servent que lorsqu'un gabarit ou un système d'e-mail abîme les caractères bruts. CSS est plus pointilleux. Dans une propriété content, un échappement comme \1F44D se prolonge jusqu'au premier caractère non hexadécimal : si le caractère suivant peut être lu comme de l'hexadécimal, vous devez terminer l'échappement par une espace. Cette espace est absorbée, pas affichée. Notre ligne CSS l'insère toujours entre les points de code, ce qui explique qu'un pouce levé avec teint donne \1F44D \1F3FD, avec un écart tout à fait voulu.

Pourquoi X compte chaque emoji pour deux caractères

Les limites de caractères sont un autre endroit où les décomptes divergent. La bibliothèque de comptage open source de X compte la plupart des emojis pour deux caractères dans la limite de 280, quelle que soit leur composition : 👍 et 👩‍💻 coûtent donc autant, alors que l'un est un seul point de code et l'autre en compte trois. Le SMS est plus sévère : un seul emoji fait basculer tout le message en encodage UCS-2, ce qui réduit un SMS de 160 caractères à 70. Si un formulaire, une colonne de base de données ou un réseau social refuse un texte qui paraît court, le tableau des longueurs ci-dessus explique généralement pourquoi.

Glossaire des emojis : points de code, liants et sélecteursCodes courts d'emojis pour Slack, Discord et GitHubTous les emojis à copier

Questions sur les points de code des emojis

Quel est le code Unicode de l'emoji smiley ?

😀 visage souriant correspond à U+1F600. En HTML, écrivez 😀 ; en CSS, \1F600 ; en JavaScript, \u{1F600} ou l'ancienne forme \uD83D\uDE00 ; et en Python, \U0001F600. Collez n'importe quel autre emoji dans le convertisseur pour obtenir ses codes.

Pourquoi un emoji a-t-il deux points de code ?

Beaucoup d'emojis sont des séquences. ❤️ est le symbole cœur U+2764 suivi du sélecteur de style U+FE0F, 👍🏽 est un pouce levé plus un teint, et les drapeaux sont deux lettres. Votre appareil dessine la séquence comme une seule image.

Quelle différence entre \u{1F600} et \uD83D\uDE00 ?

C'est le même emoji. \u{1F600} désigne directement le point de code et fonctionne en JavaScript moderne. \uD83D\uDE00 est la paire de substitution UTF-16, la seule forme qu'acceptent l'ancien JavaScript, Java, C# et JSON pour les caractères au-delà de U+FFFF.

Combien d'octets fait un emoji ?

En UTF-8, quatre octets par point de code au-delà de U+FFFF : un emoji simple comme 😀 fait donc quatre octets. Les séquences s'additionnent : 👍🏽 fait 8 octets, 👩‍💻 en fait 11 et le drapeau de l'Écosse 28.

Ce convertisseur envoie-t-il mon texte quelque part ?

Non. La conversion s'exécute entièrement dans votre navigateur, en JavaScript. Rien de ce que vous tapez ou collez n'est envoyé ni conservé.