acento.io
Utilitaire texte

Encodeur d'entités HTML

Encodez et décodez les entités HTML instantanément — 100 % dans le navigateur, vos données ne quittent jamais votre machine.

Par Carlos Suárez , Ingénieur systèmes
Dernière mise à jour:

Ce que fait ce encodeur d'entités HTML

Cet encodeur décodeur d'entités HTML vous permet d'échapper les caractères spéciaux HTML — &, <, >, ", ' — et de les restituer en texte brut. En mode encodage, l'outil convertit vos caractères réservés en entités nommées ou numériques ; en mode décodage, il interprète les formes &amp;amp;, &#160; et &#xA0; sans effort. Notez que les caractères accentués du français (é, è, ê, ç) occupent deux octets en UTF-8 : activer l'option « Encoder tous les non-ASCII » les convertit en entités numériques, utile pour les clients mail anciens qui n'affichent pas Unicode. Cette version française de l'outil traite tout localement : 100 % dans le navigateur — vos données ne quittent jamais votre machine. Pas d'upload, pas de tracking, pas de logs serveur.

Fonctionnalités

  • Encodage des caractères réservés. Échappe &, <, >, " et ' en leurs entités nommées HTML5 correspondantes, rendant le texte sûr à insérer dans n'importe quel gabarit HTML.
  • Décodage complet. Reconnaît les entités nommées courantes (&amp;nbsp;, &amp;copy;…), les entités décimales (&#160;) et hexadécimales (&#xA0;) conformément à la spécification HTML5.
  • Option non-ASCII vers entités numériques. Convertit tout caractère hors ASCII en entité numérique décimale : idéal pour les templates d'e-mails où certains clients n'affichent pas correctement l'Unicode.
  • Avertissement sur la portée. La spécification HTML5 recense environ 2 000 entités nommées. Cet outil couvre les entités les plus utilisées et toutes les entités numériques — sans alourdir le bundle inutilement.
  • Confidentialité totale. Aucun texte n'est envoyé à un serveur. Le traitement se fait entièrement dans votre navigateur, ce qui convient aux contenus sensibles ou propriétaires.
  • Copie en un clic. Le bouton « Copier » transfère immédiatement le résultat dans votre presse-papiers, sans sélection manuelle, pour accélérer votre flux de travail.

Comment utiliser le encodeur d'entités HTML

Collez votre texte ou votre fragment HTML dans la zone de saisie, choisissez le mode souhaité, puis copiez le résultat.

  1. Collez votre contenu. Saisissez ou collez le texte à traiter dans la zone d'entrée — par exemple <p>Café & jalapeño</p>.
  2. Choisissez le mode. Sélectionnez « Encoder » pour échapper les caractères spéciaux, ou « Décoder » pour restituer les entités en texte lisible.
  3. Activez l'option non-ASCII si nécessaire. Cochez « Encoder tous les non-ASCII » pour convertir les caractères accentués (é → &#233;) en entités numériques, utile pour les environnements à encodage limité.
  4. Copiez le résultat. Cliquez sur « Copier » pour transférer le résultat dans votre presse-papiers et le coller directement dans votre éditeur ou votre template. Si vous avez besoin de normaliser la casse du texte avant de l'encoder, le [convertisseur de casse](/fr/case-converter/) peut vous faire gagner une étape.

Cas d'usage courants

  • Intégration de contenu utilisateur dans des templates HTML. Avant d'insérer une saisie utilisateur dans une page web, encodez-la pour neutraliser les balises injectées et prévenir les failles XSS dans vos formulaires ou éditeurs.
  • Extraction de texte brut depuis du HTML scrappé. Lorsque vous récupérez du HTML via fetch pour en extraire le contenu, décodez les entités afin d'obtenir un texte lisible, sans résidus comme &amp;eacute; ou &#8211;.
  • Rédaction de documentation technique. Pour afficher des exemples de balises HTML dans un article ou un tutoriel — comme sur Linuxfr.org — encodez les chevrons afin qu'ils s'affichent comme du texte et non comme du balisage interprété par le navigateur.
  • Templates d'e-mails compatibles clients anciens. Certains clients mail d'entreprise, notamment ceux déployés à Marseille ou Toulouse dans des environnements Exchange non mis à jour, n'interprètent pas Unicode. Convertissez les caractères accentués en entités numériques pour garantir l'affichage. Pour nettoyer des slugs d'URL avant envoi, le [générateur de slug URL](/fr/slugify/) complète utilement ce flux.
  • Vérification de scripts de migration de données. Lors d'une migration de base de données, décodez les champs HTML stockés pour comparer le texte brut avec la source attendue, et repérez les entités mal échappées ou dupliquées avec le [comparateur de textes](/fr/text-diff/).

Questions fréquentes

Mes données sont-elles envoyées à un serveur ?

Non. Tout le traitement s'effectue dans votre navigateur via JavaScript. Aucun texte ne transite par un serveur distant, aucun log n'est conservé. Vous pouvez utiliser cet outil avec des contenus confidentiels en toute sérénité.

Quelle est la différence entre une entité nommée et une entité numérique ?

Une entité nommée utilise un identifiant lisible, comme &amp;amp; pour & ou &amp;copy; pour ©. Une entité numérique référence le point de code Unicode directement : &#38; (décimal) ou &#x26; (hexadécimal). Les deux formes sont équivalentes pour les navigateurs modernes, mais les entités numériques couvrent n'importe quel caractère, même ceux sans nom défini.

Pourquoi &amp;apos; ne fonctionne-t-il pas dans certains navigateurs anciens ?

&amp;apos; est défini en XHTML et HTML5, mais n'existait pas en HTML4. Pour une compatibilité maximale avec les anciens rendus, préférez l'entité numérique &#39; à la place de &amp;apos;.

L'outil gère-t-il les 2 000 entités nommées de la spécification HTML5 ?

Cet outil couvre les entités nommées les plus utilisées ainsi que la totalité des entités numériques (décimales et hexadécimales). La liste complète HTML5 dépasse 2 000 entrées ; l'embarquer intégralement alourdirait le bundle sans bénéfice réel pour la majorité des cas d'usage. La documentation MDN et les ressources de Korben listent les entités rares si vous en avez besoin.

Comment encoder du HTML dans un attribut de lien ou un attribut data- ?

Collez l'attribut complet dans la zone d'entrée et lancez l'encodage. Les guillemets (" → &amp;quot;) et les esperluettes (& → &amp;amp;) seront correctement échappés. Veillez à ne pas double-encoder un texte déjà partiellement échappé : décodez-le d'abord, puis ré-encodez-le.

Les entités numériques au-delà de U+FFFF sont-elles supportées ?

Les points de code au-delà de U+FFFF (emojis, certains idéogrammes) nécessitent une paire de substitution en JavaScript ES5 et dans certains parsers XML. Les navigateurs modernes et la norme HTML5 les gèrent nativement via &#x1F600; par exemple, mais les environnements d'e-mail ou les parsers anciens peuvent les interpréter incorrectement. Testez toujours sur votre cible.