Hex Encoder & Decoder
How to Use
📖 Tool Introduction
The Hex Encoder and Decoder is a free online hexadecimal conversion helper that moves back and forth between readable text and its byte-by-byte hexadecimal expansion. When you debug a binary protocol, inspect a file header or hand-craft a network packet, you often need to turn a string into the sequence 48 65 6C 6C 6F; conversely, when you copy a run of hexadecimal digits out of a packet capture tool, you want one click to restore it to readable text. The tool works strictly on the UTF-8 byte stream, so Chinese characters and emoji are expanded into their real multi-byte sequences rather than truncated by 16-bit code units. You may tick the space-separation option to put a space between bytes, and you may switch the output between upper and lower case. On the decode side it is forgiving: spaces, commas, 0x prefixes and \x notations are stripped automatically before parsing. Whenever the input contains an illegal character or an odd number of hex digits, the tool raises a clear error instead of silently emitting half a garbled character. Every calculation happens locally in the browser, so your data never leaves the machine. A small meter always shows how many bytes the current text occupies, which is handy when you compare sizes before and after encoding. The whole interface stays compact on both wide screens and phones. Reverse engineers examining firmware blobs, students learning how characters are actually stored, and web developers who need to hash or compare raw bytes all reach for the same small helper, because reading a wall of hex by eye is exhausting and a second pair of eyes in the form of this tool catches the off-by-one byte that always seems to hide at the end of a line. The forgiving parser means you can paste straight from a log file or a debugger window without first cleaning it up by hand. You can also flip between upper and lower case at any moment, which matters when a downstream system is picky about letter case. Whether your goal is a quick memory check or a full dump of a short packet, the tool keeps both the hex digits and the original text on the same screen so you never lose your place.
✨ Key Features
- UTF-8 bytes: CJK and emoji expand into their true multi-byte form
- Direction dropdown: text-to-hex or hex-to-text at one pick
- Space separation: toggle spaces between bytes
- Case: choose upper A-F or lower a-f
- Forgiving input: spaces, commas and 0x prefixes ignored on decode
- Fully local: computed in the browser, nothing uploaded
📝 How to Use
- Pick text-to-hex or hex-to-text from the direction dropdown
- Tick space separation and upper case as needed
- Paste text or a hex string into the input area
- Click the convert button
- Copy or download the result from the output area
⚠️ Notes
- Even length: a hex input must contain an even number of digits
- Legal alphabet: only 0-9 and a-f (A-F) are accepted
- Byte order: output follows UTF-8 order, no byte swapping
- Invalid UTF-8: non-text bytes fail decoding with a clear hint
- Long input: split very long payloads into chunks