Non-destructive byte operations
Binary Editing & Search
Edit bytes efficiently while preserving the original file and a reversible history.
Explore source ↗Capability
A piece-table-inspired byte overlay tracks overwrite, insert, and delete operations over the original source, while an edit journal, selection services, wildcard search, replace, save, and patch export form a complete editing lane.
- 01
Overwrite, insert, and delete overlay
- 02
Unlimited undo/redo and batches
- 03
Hex, wildcard, and text search/replace
- 04
Save As and portable patch export
How it composes
From intent
to working system.
Overlay
Edits reference the immutable source plus inserted and replaced ranges.
Journal
Operations become reversible single or batch history entries.
Search
Pattern, wildcard, text, and replacement services operate across the virtual data.
Save
The merged view writes a new file or a compact patch description.
Quick start
Adopt this
capability.
Start with the primary module, then add the related packages only when the application needs those layers. Replace VERSION with the current NuGet version.
dotnet add package HexView<PackageReference Include="HexView" Version="VERSION" /><PackageVersion Include="HexView" Version="VERSION" />var source = new MemoryMappedLineReader("firmware.bin");var overlay = new ByteOverlay(source) { Journal = new EditJournal() };
overlay.OverwriteByte(0x100, 0xFF);overlay.InsertBytes(0x200, new byte[] { 0xDE, 0xAD });
await new SaveService().SaveAs(overlay, "patched.bin");Modules in this capability
Use one layer.
Compose the rest.
Source of truth
Read the module beside the complete system.
The implementation, samples, issues, and release notes stay in the parent repository so module details remain connected to the product architecture.