Convertir un texte en hexadécimal
« Hello, hex! » devient 48656c6c6f2c2068657821 : 11 octets, chacun écrit avec deux chiffres hexadécimaux. Recollez l'hexadécimal et le texte revient, tandis qu'une longueur impaire ou des octets invalides sont refusés au lieu d'être devinés. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Texte
- Hello, hex!
- Hex
- 48656c6c6f2c2068657821
- Octets
- 11
- Mode de calcul
- Encode
- Encodage
- utf-8
Le texte et l’hexadécimal offrent deux vues utiles des mêmes données UTF-8. Le premier est lisible par une personne, tandis que le second révèle les octets exacts employés par les logiciels, protocoles, journaux et tests. Ce convertisseur produit une suite hexadécimale continue à partir d’une chaîne ou restitue un texte lisible depuis des octets valides. Il traite de façon cohérente l’ASCII et l’Unicode multioctet, indique le nombre d’octets et précise le sens choisi. Au décodage, il refuse les longueurs impaires, les caractères non hexadécimaux et les séquences UTF-8 incorrectes afin qu’aucun remplissage ni caractère de remplacement ne modifie silencieusement l’information.
Transformez un texte lisible en octets hexadécimaux
Choisissez le mode encode et saisissez exactement le texte que vous souhaitez examiner ou transporter. Encode étant la valeur par défaut, le champ text suffit pour l’opération courante. Le convertisseur sérialise la chaîne en UTF-8, puis écrit chaque octet sous la forme de deux chiffres hexadécimaux minuscules.
Une lettre latine élémentaire occupe généralement un octet, alors qu’un caractère accentué, une autre écriture ou un emoji peut en occuper plusieurs. Cette distinction compte, car le résultat décrit les octets encodés et non les caractères visibles ni les points de code Unicode. La réponse fournit le texte initial, la suite hexadécimale continue, le nombre d’octets UTF-8, le mode retenu et l’encodage.
Conservez les espaces, tabulations et retours à la ligne utiles, puisqu’ils font partie des données. Une chaîne vide est valide et produit zéro octet. Sans réseau, horloge, hasard ni état externe, une même entrée donne toujours exactement le même résultat.
Restaurez du texte UTF-8 depuis l’hexadécimal en toute sûreté
Choisissez le mode decode lorsque le champ text contient des octets hexadécimaux. Fournissez une chaîne continue composée uniquement des chiffres 0 à 9 et des lettres a à f ; les majuscules sont admises puis normalisées en minuscules dans la réponse. Le convertisseur vérifie d’abord que la longueur est paire, car un octet exige une paire complète.
Une longueur impaire est refusée sans ajout, suppression ni supposition. La ponctuation, les préfixes, les espaces, les séparateurs et les lettres hors de l’alphabet hexadécimal sont également rejetés. Ces règles strictes rendent les données mal formées visibles et assurent un comportement prévisible aux automatisations.
Les octets sont ensuite décodés avec un décodeur UTF-8 strict. Une séquence incorrecte renvoie une erreur de saisie plutôt que des caractères de remplacement susceptibles de masquer une corruption. En cas de succès, la réponse contient le texte retrouvé, l’hexadécimal normalisé, le nombre d’octets, le mode decode et l’étiquette UTF-8.
La chaîne vide correspond valablement à zéro octet. Retirez les espaces ou le préfixe 0x de votre source avant l’envoi.
Intégrez une conversion déterministe à vos processus
Servez-vous du formulaire dans le navigateur pour déboguer, enseigner, convertir une valeur copiée ou examiner les octets d’une chaîne visible. Un jeu de tests pertinent comprend un exemple ASCII, un exemple Unicode multioctet, un décodage correct et une erreur de longueur impaire ou de caractère interdit. Vérifiez aussi le nombre d’octets, car il ne correspond pas nécessairement au nombre de caractères.
L’hexadécimal n’est pas un chiffrement : il ne cache rien, n’authentifie personne, ne compresse pas et ne protège aucun secret. Utilisez-le pour les protocoles, migrations, journaux, contrôles d’interopérabilité, formations et diagnostics. Pour de gros fichiers, choisissez plutôt un outil de fichier ou de flux.
Cas d’usage
Apprentissage d’Unicode
Montrez pourquoi les caractères visibles occupent des nombres d’octets UTF-8 différents en comparant ASCII, accents, écritures et emoji.
Questions fréquentes
Le mode encode utilise-t-il UTF-8 ?
Oui. Le texte est sérialisé en octets UTF-8 et chaque octet devient deux chiffres hexadécimaux minuscules.
Pourquoi la longueur hexadécimale doit-elle être paire ?
Un octet exige deux chiffres hexadécimaux. Un nombre impair laisse un octet incomplet et provoque donc un refus.
Puis-je inclure des espaces, tirets ou le préfixe 0x ?
Non. Le mode decode accepte uniquement une suite continue de chiffres hexadécimaux afin de garantir une validation sans ambiguïté.
Que se passe-t-il si les octets ne forment pas un UTF-8 valide ?
La conversion renvoie une erreur de saisie au lieu d’insérer silencieusement des caractères Unicode de remplacement.
L’hexadécimal permet-il de protéger un texte ?
Non. Il s’agit d’une représentation réversible des octets, et non d’un chiffrement, d’un hachage ou d’une protection des secrets.
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/text/text-to-hex \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello"}'const res = await fetch("https://api.kit.forhosting.com/text/text-to-hex", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/text-to-hex",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/text-to-hex", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/text-to-hex", 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": "Hello"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.text_to_hex",
"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
max_tokens | 20000 |
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
Intégrez une conversion déterministe à vos processus
Préférez l’API lorsqu’un script, un SDK, une tâche d’intégration continue, un générateur de documentation ou un processus d’assistance doit reproduire exactement la même opération. Chaque élément réussi coûte $0.002 ; une entrée inverse mal formée renvoie invalid_input, ce qui permet de distinguer un défaut de données d’une panne du service.
Cas d'intégration
Débogage des protocoles et API
Examinez les octets UTF-8 exacts de champs, réponses ou messages courts, puis restituez le texte à partir d’octets connus.
Fixtures logicielles stables
Produisez des valeurs hexadécimales canoniques en minuscules pour les tests, la documentation, les migrations et les contrôles multilangages.