Encodeur UTF-32
Transformez du texte en valeurs UTF-32 à largeur fixe : « Hi » donne 00000048 00000069, deux unités et 8 octets, et un emoji comme U+1F600 reste une seule unité, 0001F600. Les listes en hex ou en décimal se décodent aussi. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Texte
- Hi
- Mode de calcul
- Encode
- Format de sortie
- Hex
- Résultat
- 00000048 00000069
- Unités de code
- 2
- Octets
- 8
UTF-32 stocke chaque valeur scalaire Unicode dans une seule unité de code de 32 bits à largeur fixe. Cette correspondance biunivoque facilite le raisonnement sur les formats filaires, les dumps mémoire et les exemples de protocole par rapport à UTF-8 à largeur variable ou UTF-16 avec paires de surrogates lorsque vous devez voir chaque caractère comme une valeur complète de trente-deux bits. Cet outil encode le texte brut en une liste séparée par des espaces de ces unités en hexadécimal de huit chiffres en majuscules ou en décimal simple, et décode ces listes en texte lisible.
Qu'est-ce qu'une unité de code UTF-32 et comment la liste est écrite
En UTF-32 chaque valeur scalaire Unicode occupe exactement une unité de code de 32 bits. La lettre H est U+0048 et apparaît comme 00000048 en hex ou 72 en décimal ; un emoji tel que U+1F600 est une seule unité 0001F600 plutôt qu'une paire de surrogates. L'encodage parcourt votre entrée par points de code complets, jamais seulement par unités UTF-16, de sorte que les caractères hors du plan multilingue de base comptent pour une entrée et quatre octets dans les totaux de la réponse.
Le format décimal écrit les mêmes valeurs en entiers non négatifs pour les outils qui préfèrent la base dix. Comme la conversion est un travail local de pure analyse sans réseau ni modèle, le même texte produit toujours la même liste.
Encoder, décoder, bonne formation et entrée incorrecte
Le mode est encode par défaut : fournissez du texte brut et recevez la liste au format choisi. Passez en mode decode lorsque l'entrée est déjà une liste de valeurs 32 bits. Le format est hex par défaut ; choisissez decimal lorsque les jetons doivent être des entiers en base dix.
Au décodage, espaces, virgules, points-virgules et barres verticales séparent les jetons ; les jetons hex peuvent porter un préfixe 0x ou U+, et une chaîne hex continue dont la longueur est un multiple de huit est acceptée sans séparateurs pour les dumps compacts. Chaque jeton doit se résoudre en un scalaire Unicode dans la plage inclusive de zéro à U+10FFFF.
Nombres hors plage, déchets non hex en mode hex et listes vides après découpage échouent rapidement avec des messages spécifiques au champ pour que les clients corrigent la requête sans deviner. Les valeurs invalides de mode ou de format sont rejetées avant toute conversion.
Où l'exécuter et comment fonctionne la tarification
Pour une inspection ponctuelle — transformer une courte chaîne en hex UTF-32 à largeur fixe pour une annexe de protocole, confirmer qu'un emoji est une unité de code de quatre octets, ou décoder la liste décimale d'un partenaire en texte lisible — utilisez l'outil gratuit dans le navigateur. Placez l'appel dans un carnet de rétro-ingénierie, un harnais QA qui affirme l'égalité du format filaire, ou un flux de support où les clients collent des listes d'unités et où vous avez besoin de la chaîne sans ouvrir un éditeur hex.
Le travail d'analyse tier-A maintient une latence faible sans coût de conteneur ni de modèle à remesurer après chaque déploiement.
Cas d’usage
Documentation de protocoles et formats binaires
Émettez des listes UTF-32 à largeur fixe en hex ou décimal de chaînes d'exemple pour spécifications, diagrammes de paquets et notes d'interopérabilité.
Support et rétro-ingénierie
Décodez des dumps UTF-32 hex ou décimaux fournis par les clients en texte, en rejetant les unités surrogate et hors plage.
Questions fréquentes
En quoi UTF-32 diffère-t-il d'UTF-16 ici ?
UTF-32 utilise une unité de 32 bits par valeur scalaire. Les caractères hors BMP restent des unités uniques plutôt que des paires de surrogates. Les points de code surrogate sont invalides et rejetés.
Que se passe-t-il pour une unité surrogate ou hors plage ?
Aucune liste ni texte partiel n'est renvoyé, et l'appel échoué n'est pas facturé.
Puis-je coller de l'hex continu sans espaces ?
Oui en mode decode avec format hex. La longueur en chiffres doit être un multiple de huit. Vous pouvez aussi utiliser espaces, virgules, 0x ou préfixes U+ sur chaque jeton.
Puis-je obtenir les valeurs UTF-32 en décimal plutôt qu'en hex ?
Oui. Choisissez le format décimal : chaque caractère s'écrit comme un nombre en base dix, et la lettre H apparaît sous la forme 72 au lieu de 00000048. Le décodage accepte les listes décimales de la même façon.
Comment retransformer un dump UTF-32 en hex en texte ?
Choisissez le décodage et collez les valeurs séparées par des espaces, des virgules, des points-virgules ou des barres verticales ; le préfixe 0x ou U+ est accepté. La liste 00000048 00000069 redevient « Hi ».
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/enc/utf32 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hi"}'const res = await fetch("https://api.kit.forhosting.com/enc/utf32", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hi"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/utf32",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hi"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/utf32", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hi"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hi"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/utf32", 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": "Hi"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.utf32",
"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.
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
Les points de code surrogate et les valeurs au-dessus de U+10FFFF sont rejetés avec une erreur claire invalid_input plutôt qu'une corruption silencieuse.
Qu'est-ce qu'une unité de code UTF-32 et comment la liste est écrite
La réponse inclut toujours mode, format, code_units et bytes (quatre fois le nombre d'unités) pour croiser les champs de longueur dans les dispositions binaires.
Encoder, décoder, bonne formation et entrée incorrecte
Les valeurs dans la plage des surrogates U+D800 à U+DFFF sont illégales en UTF-32 et échouent avec invalid_input, tout comme les surrogates non appariés trouvés lors de l'encodage d'une chaîne JavaScript qui contient déjà un surrogate haut ou bas isolé.
Où l'exécuter et comment fonctionne la tarification
Chaque appel API réussi coûte $0.002 ; la validation échouée, y compris les unités surrogate et les valeurs hors plage, n'est pas facturée, donc sonder de mauvais dumps ne vide pas le solde prépayé. Les réponses sont du JSON déterministe avec le résultat converti, le mode et le format résolus, et les comptes d'unités de code et d'octets.
Cas d'intégration
Génération de fixtures et de données de test
Générez des listes déterministes d'unités de code pour tests unitaires affirmant des comptes de quatre octets, des scalaires d'emoji et des allers-retours de décodage.
Questions techniques
Que renvoie le mode encode ?
Une liste séparée par des espaces de chaque caractère comme unité de code 32 bits complète en hex de huit chiffres majuscules (défaut) ou en décimal, plus code_units et bytes (unités × 4).
Combien coûte l'API ?
$0.002 par requête réussie. L'outil navigateur est gratuit. L'entrée invalide n'est pas facturée.