Overview
Introduction
A hex editor lets you see and change the exact bytes that make up a file, rather than its interpreted content, which matters when you're debugging a file format, patching a binary, or just curious what's really inside a file.
This tool recreates the classic hex-editor layout entirely in your browser: an offset column, the bytes themselves in hex, and their ASCII rendering side by side, with any byte editable in place.
What Is Hex Editor?
A hex editor displays a file's raw bytes as two-digit hexadecimal pairs arranged in fixed-width rows (16 bytes per row here), alongside the offset of each row's first byte and an ASCII column showing which of those bytes are printable characters.
Unlike a text editor, a hex editor treats every byte as data, including ones that would crash or corrupt a text renderer, which is why it's the standard tool for inspecting or patching binary formats.
How Hex Editor Works
Your file (or pasted text, UTF-8 encoded into bytes) is loaded into memory and split into rows of 16 bytes; each byte is rendered as its two-digit uppercase hex value, and the same byte is rendered again in the ASCII column as its printable character or a '.' if it falls outside the printable range (0x20-0x7E).
Clicking a hex cell swaps it for a small input box; typing a new two-digit hex value and confirming replaces that byte in an internal copy of the data, immediately updating both the hex cell and its ASCII character, without touching any other byte.
"Download edited bytes" packages the current (possibly edited) byte array into a Blob and triggers a normal browser file download.
When To Use Hex Editor
Use it to make a small, precise patch to a file, flipping a flag byte, fixing a corrupted header field, or tweaking a magic number, without installing a dedicated hex editor application.
It's also useful purely for inspection: pasting text to see its exact byte encoding, or uploading a file to check for unexpected bytes (a stray BOM, trailing null bytes, or a mismatched line ending) that a text editor would hide.
Often used alongside Hexdump Generator and Hex Bytes to File Converter.
Features
Advantages
- No installation: works entirely in the browser, nothing is uploaded to a server.
- Live ASCII and hex views stay in sync as you edit, so you can see a change's effect immediately.
- Accepts either a real uploaded file or freeform pasted text as the byte source.
Limitations
- Capped at 64 KB of visible/editable data; larger files are truncated for display and download, which is called out on-screen whenever it applies.
- Only single-byte edits are supported; there's no insert, delete, or multi-byte find-and-replace like a dedicated hex editor application would offer.
- Edits are lost on page reload; there's no autosave or undo history beyond the current session.
Examples
Best Practices & Notes
Best Practices
- Double-check the offset and surrounding bytes before editing, so you're confident you're changing the byte you intend to.
- Keep a backup of the original file; this tool doesn't preserve edit history once you close or reload the page.
- For files near or over the 64 KB cap, consider a desktop hex editor for the parts beyond what this tool can display.
Developer Notes
Rows are built by slicing the byte array into 16-byte chunks and formatting each byte as `toString(16)` padded to two uppercase digits; edits create a fresh `Uint8Array` copy rather than mutating in place, so React state updates trigger a clean re-render. The 64 KB cap is enforced before row-building, not just visually, since rendering one table cell per byte for a large file would otherwise freeze the page.
Hex Editor Use Cases
- Patching a single flag or magic-number byte in a small binary file
- Inspecting the exact byte encoding of a short piece of pasted text
- Teaching or demonstrating how text and binary data are represented as bytes
- Spotting stray bytes (BOM, null padding) that a text editor wouldn't show
Common Mistakes
- Assuming the tool can handle arbitrarily large files; only the first 64 KB is shown and editable.
- Typing more than two hex digits into a byte cell; only 00-FF (one byte) is a valid value per cell.
- Forgetting that pasted text is UTF-8 encoded first, so non-ASCII characters may take up more than one byte per character.
Tips
- Press Escape while editing a cell to cancel that edit without changing the byte.
- Use the ASCII column as a quick way to find a recognizable string before locating its exact offset.