Hexditor.jar is a free and powerful hexadecimal editor written in java. It works with any file of up to 9 exa bytes (2^63-1). The memory footprint in very low, less than 32MiB including the java runtime environment, even if you are working with a giant file. The only requirements are a Java Runtime Environment (1.4 or more) and the file Hexditor.jar.

Thanks to the multi threads structure of Hexditor.jar, you can start a search while saving or vis versa. During a save or/and a search, you can continue to navigate through the file for reading, but not of course for writing.

The write mode is only overwrite mode. For most of binary files, it may be dangerous to slide a portion of code. For the same reason, data not modified but not exactly at the same position are shown with a gray background. An insert must be explicit and must be done with the insert key. Be careful with big inserts, you can virtually create a giant file, but then it may be imposssible to save it (try insert 2Ei for exemple).

Modifications done on the file are shown with red colored texts. An asterix (*) after the file name shows that there is at least one modification. You can undo the modifications. You can redo at least one undo. Note that the undo stack and the coloration help are cleared by a save, because there is no difference between the file and the screen.

Cut/copy/paste use the system clipboard. A selection in the text area is stored as text but do not allow the selection of some isoControl characters. A selection in the nibble area is stored as hexa string. The limitation for a selection size is limited by the memory option of the java VM (-Xms64m), but the clipboard limitation may be lower. As the clipboard is shared, you can import/export data in text format from/to other applications. Note that the carriage return characters are not well transferred by the windoz clipboard.

Field asking for a position in the file may be a positive decimal number like:

  1. prefixes & binary multiples are case sensitive, see the difference beween 'k' and 'Ki'
  2. To avoid confusion with the exa prefix (E), 'e' is better than 'E' to separate the exponent from the significant.
  3. Why prefix instead of suffix? Because this is the prefix of the unit, not the suffix of the number.

The bottom right corner shows the offset position from the beginning of the file, followed by the offset to the end of the file.
A click on offset field toggles between decimal and hexadecimal view.


The search tool

Files type & size
binary, 16MiB
binary, 4GiB
For text search with other charsets, try

The shortcuts

The main shortcuts are as the LibreOffice's shortcuts.

File menuusage
Ctrl+OOpen a file.
Ctrl+QLeave (close) the current file.
Ctrl+PCreate a png of the current screen. 

Edit menuusage
Ctrl+ASelect all.
Ctrl+ZUndo the last modification.
Ctrl+XCopy then cut.
Ctrl+FFind dialog box.
Insert/deleteInsert/delete dialog box.

View menuusage
Ctrl+GGoto dialog box.
Ctrl+MToggle position mark between tiny line, bold line or no mark.
Ctrl+DGo down to the next mark, or the end of the file.
Ctrl+UGo up to previous mark, or the beginning of the file. 
Ctrl+TToggle caret between nibble area and text area.
Ctrl+HChange the font to higher size.
Ctrl+LChange the font to lower size.
Ctrl+WToggle Black/White background, usefull for OLED screen.

Arrow Left/RightMove cursor to left/right.
Shift+Arrow Left/RightMove cursor with selection to the Left/Right.
Arrow Up/DownMove cursor up/down one line.
Shift+Arrow UpSelecting lines in an upwards direction.
Shift+Arrow Down Selecting lines in a downward direction. 
HomeGo to beginning of line.
Shift+HomeGo and select to the beginning of a line.
EndGo to end of line.
Shift+EndGo and select to end of line.
Ctrl+HomeGo to start of document.
Ctrl+Shift+HomeGo and select text to start of document.
Ctrl+EndGo to end of document.
Ctrl+Shift+EndGo and select text to end of document.
Insert/deleteInsert/delete dialog box.
PageUp/PageDownScreen page up / page down.
Shift+PageUpMove up screen page with selection.
Shift+PageDownMove down screen page with selection.
Ctrl+Mouse wheelChange the font size.
Other: click on offset text to toggle between decimal and hexadecimal.



Sorry, no screenshoot, just a demo with Hexditor.jar running as an applet ;).


Autres diteurs