§ Tool 06 of 23 · Convert

Hex to text, and back.

Bidirectional hex ↔ string conversion with full encoding control. UTF-8, UTF-16, and ASCII supported; non-printable bytes preserved; clear errors when the input drifts off-format.

Version
v2.2
First shipped
Encodings
UTF-8 · UTF-16 · ASCII
Switchable per session
Direction
Bidirectional
Auto-routed
Network
Offline
Pure local
DevUtilities Hex String Converter — paired hex/text panels with encoding picker.
Plate vi — Hex String Converter with the encoding picker live.
§ 01Capabilities

Six things it does well.

i

Hex to string

Paste raw hex bytes, see the decoded text in your chosen encoding. Spaces and dashes between bytes ignored.

ii

String to hex

Type or paste text; get the hex byte sequence in the encoding you specified.

iii

UTF-8 / UTF-16 / ASCII

Pick the encoding that matches your data. Non-ASCII characters round-trip cleanly under the right encoding.

iv

Real-time conversion

Type, see results instantly. Both panels update as you key.

v

Tolerant input

Hex input accepts spaces, dashes, mixed case, and the 0x prefix. Whitespace is silent; everything else surfaces an error.

vi

One-click copy

Copy buttons on both panels. Hex without spaces, or text alone — your call.

§ 02A typical session

Four moves between bytes and text.

Pick the encoding

UTF-8 by default. Switch to UTF-16 for Windows-flavoured payloads or ASCII for old wire protocols.

Encoding picker

Paste hex or text

Drop bytes from a hex dump or plain text. Both panels are bidirectional.

Either field

Read the conversion

Live update on the opposite side. Errors surface inline if the hex is malformed.

Live

Copy

One-click copy for the side you wanted.

Copy · ⌘ C
§ 03Made for these tasks

The work it actually does.

i — Debug

Hex dumps

Decode strings buried in xxd output without leaving the editor.

ii — Protocols

Wire-level inspection

Translate ASCII control sequences and binary frames between text and bytes.

iii — Security

Payload analysis

Inspect the strings hidden inside hex-encoded blobs from logs, samples, or packet captures.

iv — Encoding

UTF-8 vs UTF-16

Compare how the same text serialises under different encodings — visible byte-by-byte.

v — Test

Fixture generation

Produce hex test inputs from a clean string spec, exact and reproducible.

vi — Forensics

Reverse engineering

Recover printable strings from binary blobs without writing a script.

§ 04Questions, answered

Things people ask before they download.

Which encodings are supported?

UTF-8, UTF-16, and ASCII. The encoding is switchable per session and persists between launches.

Does it accept spaces or prefixes in the hex?

Yes — spaces, dashes, mixed case, and a leading 0x are all tolerated. Other non-hex characters surface an inline error.

How are non-printable bytes shown?

The hex side preserves them; the text side renders them via standard escape sequences for the chosen encoding.

Does this require network access?

No. Hex conversion is fully local; nothing leaves your machine.

What's the difference between UTF-8 and UTF-16 hex?

The same string produces different byte sequences in each. UTF-8 is byte-by-byte; UTF-16 uses two bytes per code unit (and surrogate pairs beyond U+FFFF).

Can I copy bytes without spaces?

Yes. The copy button outputs compact hex without delimiters, ready to paste into code.

§ 05Companion tools

Better with the rest of the shelf.

§ Download

Bytes to text, text to bytes, without a script.

Download — Mac App Store Changelog