Encodeur / Décodeur Hex

Convertissez texte ou fichiers en hexadécimal et inversement. Jeu de caractères et casse au choix ; décode l'hex avec espaces, deux-points, tirets ou 0x.

Vos saisies et fichiers restent dans le navigateur

Saisissez du texte à encoder ou collez du hex à décoder, ou déposez un fichier ci-dessous.

Glissez et déposez un fichier ici

Si un fichier est sélectionné, l'entrée texte est ignorée.

Options de décodage

Le résultat encodé ou décodé s’affiche ici.

Sur cette page

Transformez du texte ou n'importe quel fichier en chaîne hexadécimale et décodez des dumps hex en texte ou en octets. La conversion s'exécute dans votre navigateur via du WebAssembly compilé depuis Rust : le contenu des fichiers n'est jamais envoyé.

Fonctionnalité détaillée

Chaque octet devient deux chiffres hexadécimaux : la sortie montre donc exactement quels octets contient une chaîne, pratique pour vérifier des séquences UTF-8, des BOM, des fins de ligne ou des caractères invisibles. Le texte est converti avec le jeu de caractères choisi (UTF-8, UTF-16LE, UTF-16BE, ASCII ou ISO-8859-1), et Casse Hex bascule entre minuscules et MAJUSCULES.

Le décodeur accepte l'hex sous les formes que l'on copie depuis un débogueur, une capture réseau ou un certificat : continu (48656c6c6f), séparé par des espaces ou des retours à la ligne, avec deux-points ou tirets (48:65:6c, 48-65-6c) et avec un préfixe 0x par octet (0x48 0x65). Chacune de ces tolérances peut être désactivée dans Options de décodage pour une validation stricte. Un nombre impair de chiffres ou un caractère non hexadécimal provoque une erreur, et le caractère fautif est sélectionné dans l'entrée.

Les fichiers se choisissent ou se déposent sur la page et sont lus dans un Web Worker avec barre de progression et Annuler. Si les octets décodés ne forment pas un texte valide dans le jeu choisi, par exemple pour un dump binaire, l'outil le signale et Télécharger enregistre les octets bruts.

Exemples pratiques

Texte vers hex : Hi! devient 486921 ; en UTF-8, Привет devient d09fd180d0b8d0b2d0b5d182 (12 octets, deux par lettre cyrillique).

Jeu de caractères et ordre des octets : la lettre A vaut 4100 en UTF-16LE et 0041 en UTF-16BE.

Hex formaté : 48:65:6c:6c:6f, 48-65-6c-6c-6f et 0x48 0x65 0x6C 0x6C 0x6F se décodent tous en Hello.

Validation : 48656c6c6 (neuf chiffres) est refusé comme tronqué, et 4865zz signale un caractère invalide en position 5.

Comment utiliser cet outil

  1. Saisir le texte ou choisir un fichier

    Tapez ou collez dans Texte le texte à encoder ou la chaîne hex à décoder. Vous pouvez aussi déposer un fichier sur la page ou cliquer sur Choisir un fichier.

  2. Régler jeu de caractères et casse

    Choisissez le Jeu de caractères du texte qui convertit le texte en octets et la Casse Hex de la sortie. Dans Options de décodage, gardez ou décochez Ignorer les espaces, Autoriser les séparateurs (: et -) et Autoriser le préfixe 0x.

  3. Encoder ou décoder

    Cliquez sur Encoder pour obtenir l'hex ou sur Décoder pour revenir au texte ou aux octets. Si l'entrée est invalide, l'erreur indique la position du caractère fautif.

  4. Copier ou télécharger

    Copier place le résultat dans le presse-papiers, Télécharger l'enregistre ; un résultat binaire ne peut qu'être téléchargé.

Conseils et bonnes pratiques

  • L'hex double la taille : 1 octet donne 2 caractères. Pour un transport compact, utilisez Base64 ; l'hex sert à inspecter et comparer des octets.
  • Pour repérer un BOM caché ou une espace insécable, encodez le texte en UTF-8 : efbbbf est un BOM et c2a0 une espace insécable.
  • Les empreintes (SHA-256, MD5) sont aussi en hex : les décoder donne des octets bruts et non du texte lisible, utilisez donc Télécharger.
  • Décochez Autoriser les séparateurs (: et -) ou Autoriser le préfixe 0x pour vérifier que l'entrée est un hex continu pur : 0x48 échoue alors en position 2.
  • La casse ne compte pas au décodage : D0 9f et d0 9F donnent la même lettre П.