Zum Inhalt springen
Case Converter Online
de

Hex in Text umwandeln

Füge hexadezimale Bytes ein, um sie als Text zu lesen, oder tippe Text, um seine Hex-Codes zu sehen. Leerzeichen, 0x-Präfixe und \x-Escapes werden alle verstanden.

Funktioniert in beide Richtungen. Leerzeichen, 0x, \x, Doppelpunkte und Kommas im Hex werden beim Dekodieren ignoriert.

Was Hexadezimal ist

Hexadezimal, kurz Hex, ist ein Zahlensystem zur Basis 16. Es nutzt die Ziffern 0 bis 9 und die Buchstaben A bis F, wobei A für 10 und F für 15 steht. Zwei Hex-Ziffern können jeden Wert von 0 bis 255 darstellen, also genau ein Byte. Das macht Hex zu einer kompakten und lesbaren Art, Rohdaten anzuzeigen.

Hex begegnet dir in Speicherauszügen, Mitschnitten von Netzwerkpaketen, Dateisignaturen, Farbcodes, Escape-Sequenzen im Quellcode und in Fehlerlogs. Diese Bytes wieder in Text zu verwandeln, verrät oft, was in den Daten steht.

So wandelst du Hex in Text um

Hex in Text. Füge Hex links in das Feld Hex ein. Der dekodierte Text erscheint rechts im Feld Text. Der Konverter ignoriert die üblichen Trennzeichen, du kannst also einfügen:

  • Bytes mit Leerzeichen: 48 65 6c 6c 6f
  • einen langen String: 48656c6c6f
  • Präfixe im C-Stil: 0x48 0x65 0x6c
  • Escape-Sequenzen: \x48\x65\x6c
  • Bytes mit Doppelpunkt oder Komma: 48:65:6c:6c:6f

Text in Hex. Tippe rechts in das Feld Text. Das Hex erscheint links.

Hex-Format legt fest, wie das Hex geschrieben wird:

  • Mit Leerzeichen: 48 65 6c zum Lesen und Vergleichen
  • Zusammen: 48656c für kompakte Speicherung und Strings im Hash-Stil
  • Mit Präfix: 0x48 0x65 für C, C++ und ähnlichen Code
  • Escaped: \x48\x65 für String-Literale in Python, JavaScript und Shell-Skripten

Großbuchstaben A bis F schreibt die Buchstaben groß. Kopieren übernimmt eines der Felder, und Leeren leert beide.

So funktioniert es

Zum Dekodieren entfernt der Konverter Trennzeichen, prüft, dass nur Hex-Ziffern übrig sind und dass ihre Anzahl gerade ist, und liest dann jedes Ziffernpaar als ein Byte. Die Bytes werden als UTF-8-Text dekodiert. Zum Kodieren macht er das Gegenteil: Text wird zu UTF-8-Bytes, und jedes Byte wird zu zwei Hex-Ziffern.

Jede Hex-Ziffer steht für 4 Bit. Das Byte 48 ist 4 × 16 + 8 = 72, der Code für ein großes H.

Beispiele

Hex Text
41 A
48 69 21 Hi!
48 65 6c 6c 6f Hello
48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21 Hello, World!
63 61 66 c3 a9 café
e2 82 ac €
47 72 c3 bc c3 9f 65 Grüße

Derselbe Text in jedem Ausgabeformat:

Format café
Mit Leerzeichen 63 61 66 c3 a9
Zusammen, Großbuchstaben 636166C3A9
Mit Präfix 0x63 0x61 0x66 0xc3 0xa9
Escaped \x63\x61\x66\xc3\xa9

Häufige Hex-Werte

Hex Zeichen Hex Zeichen
20 Leerzeichen 30 0
0a Zeilenumbruch 41 A
0d Wagenrücklauf 61 a
09 Tab 7e ~

Für deutsche Texte lohnt es sich, ein paar UTF-8-Folgen zu kennen: c3 a4 ist ä, c3 b6 ist ö, c3 bc ist ü, c3 9f ist ß. Steht in einem Speicherauszug dagegen ein einzelnes Byte fc für ü oder df für ß, wurden die Daten in Latin-1 (ISO-8859-1) oder Windows-1252 gespeichert, nicht in UTF-8. Dieses Tool liest nur UTF-8 und zeigt solche Bytes als Ersatzzeichen an.

Tipps und Grenzen

  • Unlesbare Ausgabe bedeutet meist, dass die Daten kein Text sind. Bilder, komprimierte Dateien und verschlüsselte Daten werden zu seltsamen Symbolen und Ersatzzeichen. Das ist zu erwarten.
  • Prüf bei Zahlen die Bytereihenfolge. Dieses Tool liest die Bytes in der angegebenen Reihenfolge. Mehrbyte-Zahlen in Speicherauszügen sind oft im Little-Endian-Format gespeichert, lies sie also von rechts nach links.
  • Hex-Farbcodes sind kein Text. #ff8800 beschreibt Rot-, Grün- und Blauanteile, keine Buchstaben.
  • Hex ist keine Verschlüsselung. Es ist nur eine andere Art, Bytes zu schreiben.

Andere Wege, Hex umzuwandeln

Kommandozeile. Unter Linux und macOS macht xxd -p aus einer Datei reines Hex und xxd -r -p wieder zurück. echo -n Hello | xxd -p gibt 48656c6c6f aus.

Python. bytes.fromhex('48656c6c6f').decode() liefert Hello, und 'Hello'.encode().hex() liefert 48656c6c6f.

JavaScript (Node). Buffer.from('48656c6c6f', 'hex').toString() liefert Hello.

Excel. In der deutschen Version liefert =ZEICHEN(HEXINDEZ("48")) für einzelne ASCII-Bytes ein H, und =DEZINHEX(72) geht den umgekehrten Weg. In der englischen Version heißen die Funktionen CHAR, HEX2DEC und DEC2HEX.

Ähnliche Tools

Um dieselben Bytes als Einsen und Nullen zu sehen, nimm den Binärcode Übersetzer. Das Tool zur UTF-8-Kodierung zeigt jedes Zeichen mit seinem Codepunkt und seinen Bytes. Wenn deine Daten Base64 statt Hex sind, nimm Base64 kodieren und dekodieren.

Hex in Text: Fragen und Antworten

Wie wandle ich Hex in Text um?

Füge das Hex links in das Feld Hex ein. Der Text erscheint sofort rechts. 48 65 6c 6c 6f, 48656c6c6f und 0x48 0x65 0x6c 0x6c 0x6f werden alle zu Hello dekodiert.

Warum bekomme ich einen Fehler wegen einer ungeraden Anzahl von Ziffern?

Jedes Byte wird mit genau zwei Hex-Ziffern geschrieben. Gültiges Hex hat ohne Trennzeichen also immer eine gerade Anzahl von Ziffern. Meist fehlt irgendwo eine Ziffer oder ist eine zu viel. Einstellige Werte müssen mit führender Null geschrieben werden, also 0a statt a.

Ist die Ausgabe ASCII oder UTF-8?

UTF-8, das ASCII einschließt. Einfacher Text ohne Umlaute ergibt in beiden dasselbe Hex. Zeichen jenseits von ASCII brauchen mehr als ein Byte: é ist c3 a9, ü ist c3 bc, ß ist c3 9f und das Eurozeichen ist e2 82 ac.

Spielt Groß- oder Kleinschreibung bei Hex eine Rolle?

Nein. 4F und 4f sind dasselbe Byte. Schalte Großbuchstaben A bis F ein, wenn die Stelle, an der du einfügst, Großbuchstaben erwartet.

Mehr Tools für Code und Daten

Alle Tools ansehen