Encodeur et décodeur d’entités HTML nommées
Encodez « Tom & Jerry <3 © 2026 » et obtenez « Tom & Jerry <3 © 2026 », prêt pour le code d'une page. Au décodage, les noms connus redeviennent des caractères et un nom mal orthographié est refusé au lieu de passer. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Texte
- Tom & Jerry <3 © 2026
- Mode de calcul
- Encode
- Texte
- Tom & Jerry <3 © 2026
Convertissez du texte vers ou depuis des entités HTML nommées sans installer de bibliothèque ni dépendre du DOM d’un navigateur. Le mode d’encodage protège les caractères sensibles au balisage, notamment l’esperluette, les chevrons, les guillemets et l’apostrophe, ainsi que plusieurs symboles et signes typographiques courants. Le décodage restitue les entités reconnues et refuse les noms inconnus au lieu de masquer une erreur probable.
Encodez le texte avant de l’insérer dans du HTML
Choisissez le mode d’encodage lorsqu’un texte brut doit être représenté sans ambiguïté dans une source HTML. Une esperluette peut commencer une référence d’entité, les chevrons peuvent être pris pour des balises et les guillemets peuvent perturber la syntaxe environnante. Le convertisseur remplace les caractères pris en charge par des références nommées telles que <code>&amp;</code>, <code>&lt;</code>, <code>&gt;</code>, <code>&quot;</code> et <code>&apos;</code>.
Il reconnaît aussi des caractères usuels liés aux devises, à la propriété intellectuelle, aux mathématiques, à la ponctuation et à l’espacement : copyright, marque déposée, euro, espace insécable, tirets, guillemets courbes, puces et points de suspension. Une seule passe est effectuée, de sorte que les esperluettes ajoutées par la conversion ne sont pas encodées une seconde fois. Les lettres, chiffres, espaces, emoji et caractères non couverts restent inchangés.
Cet encodage représente du texte, mais ne remplace pas un assainissement HTML complet : il ne valide pas un document, ne retire pas les balises dangereuses et ne garantit pas qu’une valeur convient à un contexte JavaScript, CSS ou URL.
Décodez les entités avec une validation stricte
Utilisez le décodage lorsque l’entrée contient des références nommées et que vous avez besoin des caractères d’origine pour l’affichage, la comparaison, l’indexation, l’exportation ou un autre traitement. Chaque référence complète composée d’une esperluette, d’un nom et d’un point-virgule est recherchée dans la table fixe de la capacité. Les formes reconnues sont remplacées par les caractères Unicode correspondants, sans modifier le texte environnant.
Les noms sont sensibles à la casse, car deux capitalisations peuvent avoir des sens différents en HTML. Ce refus strict sécurise les automatisations : une faute comme <code>&copry;</code> ne traverse pas silencieusement la chaîne pour réapparaître sous forme de texte défectueux. Une esperluette ordinaire qui n’est pas suivie d’un nom et d’un point-virgule reste intacte.
Cette capacité vise uniquement les entités nommées ; les références numériques décimales et hexadécimales sont hors contrat. Le même dictionnaire fixe s’applique toujours, indépendamment du navigateur, d’une bibliothèque, du réseau ou des paramètres régionaux.
Choisissez le mode et intégrez le résultat
Envoyez deux champs : <code>text</code> contient la chaîne source et <code>mode</code> vaut <code>encode</code> ou <code>decode</code>. Tous deux sont obligatoires afin qu’une intégration n’ait jamais à deviner le sens de la conversion. La réponse renvoie le <code>text</code> converti ainsi que le <code>mode</code> appliqué, ce qui rend les journaux et les workflows explicites.
Pour encoder, transmettez le contenu rédigé avant son insertion dans le balisage, puis stockez ou envoyez le résultat. Pour décoder, considérez toute entité inconnue comme une erreur de validation et corrigez le producteur au lieu d’ignorer l’anomalie. L’algorithme n’utilise ni réseau, ni hasard, ni horodatage, ni état persistant ; il convient donc aux tests de référence et à la génération reproductible.
Dans un grand système, placez la conversion à une frontière nette : encodez à l’entrée d’une représentation HTML et décodez seulement à sa sortie. Alterner sans cesse les modes brouille la responsabilité de l’échappement et favorise un double encodage accidentel.
Cas d’usage
Préparer un texte destiné au balisage
Transformez esperluettes, chevrons, guillemets et symboles courants en références lisibles avant leur insertion dans du HTML généré.
Normaliser du texte HTML importé
Décodez les références reconnues avant de comparer, rechercher, exporter ou enregistrer le contenu comme texte Unicode ordinaire.
Valider une chaîne de contenu
Arrêtez le traitement dès qu’un producteur émet une entité inconnue afin de révéler rapidement les fautes et erreurs de correspondance.
Questions fréquentes
Quels modes sont acceptés ?
Le mode doit être exactement <code>encode</code> ou <code>decode</code>. Toute autre valeur produit une erreur de saisie.
Que se passe-t-il si une entité est inconnue ?
Le décodage refuse la requête avec une erreur de saisie qui mentionne le nom d’entité inconnu.
Le décodage accepte-t-il les références numériques ?
Non. Cette capacité traite les entités HTML nommées ; les références décimales et hexadécimales restent inchangées.
Encoder des entités revient-il à assainir du HTML ?
Non. L’encodage transforme certains caractères en références textuelles ; il n’analyse pas le document, ne retire pas les balises et ne protège pas tous les contextes.
Quels caractères restent inchangés lors de l'encodage ?
Les lettres ordinaires, les chiffres, les espaces, les emoji et les caractères sans nom pris en charge restent tels quels. Seuls les caractères sensibles au balisage et les symboles courants, comme le copyright, l'euro, les tirets, les guillemets typographiques et les points de suspension, sont remplacés.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/web/html-entity-convert \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Tom & Jerry <3","mode":"encode"}'const res = await fetch("https://api.kit.forhosting.com/web/html-entity-convert", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Tom & Jerry <3",
"mode": "encode"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/html-entity-convert",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Tom & Jerry <3",
"mode": "encode"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/html-entity-convert", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Tom & Jerry <3","mode":"encode"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Tom & Jerry <3","mode":"encode"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/html-entity-convert", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"text": "Tom & Jerry <3",
"mode": "encode"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.html_entity_convert",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
timeout_sec | 30 |
max_crawl_pages | 25 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Le résultat déterministe convient aux builds reproductibles, aux tests, aux chaînes de contenu, aux modèles et aux intégrations par API.
Décodez les entités avec une validation stricte
Si une référence complète n’est pas prise en charge, la requête échoue avec une erreur <code>invalid_input</code> qui indique l’entité inconnue.
Choisissez le mode et intégrez le résultat
Une requête API coûte $0.002, tandis que l’expérience dans le navigateur exécute localement la même logique pure.
Questions techniques
Combien coûte une requête API ?
Chaque requête API coûte $0.002. La conversion compte un élément comme unité de facturation.