All changes made to a document always reside in memory. In order to apply them, you have to save a document.
When the document has any modifications, the “*” symbol appears next to the document's name in each of its editor windows. Two of Hex Editor Neo commands, File » Save and File » Save As… are used to save documents. The first command applies changes to the document file itself, while the second one allows you to save a copy of the current version of the document, which is the version that includes all changes, to another file.
The File » Save command is not available for documents opened with Open as Read Only flag set on as well as for documents created with a File » New command. Being executed, this command behaves exactly as File » Save As… command.
The Save As window appears when the user executes the File » Save As… command. The window has a formats drop-down which lists all formats the editor supports for the current document. By default, the document is saved in its original format, but the user may change that. For example, the user may choose to save the file in Intel Hex format.
Use the File » Save All command to save all modified documents.
There is an option on the General Settings tab, called “Always create backups” that governs the behavior of the File Save command. When it is on, the save operation does the following:
.bakto its filename and renames the temporary file to the filename of the original file. Both these renames are performed as an atomic operation. If there already exists a file with a
.bakextension, it is silently deleted.
When the “Always create backups” option is turned off (the default state), the editor determines if it is more efficient to write only the changes made to a file than to write an entire file. For example, you may open a 4GB file in the editor, modify several bytes in the middle of it and save the changes. It is obvious, that writing only a small number of changed bytes will be much faster than writing the full copy of the original file - that's why the editor prefers to have this option off by default.
If any error occurs during “optimized” file save operation, the file will be left in undefined state. It is recommended to switch this option ON if you have any vital information in the edited file.
This option also governs the behavior of Replace in Files function. If you execute the function in Replace all occurrences and save mode, the editor warns you to switch this option on, otherwise, you may lose some valuable information. With this option on, on the other hand, each modified file is backed up before overwriting.
This option does not affect streams. Hex Editor Neo never creates a backup for a modified stream. This behavior is by design and is governed by the operating system.
Usually, Hex Editor Neo creates a temporary file in the original file's folder, so it is required to have enough free space on the volume. Otherwise, Hex Editor Neo will not be able to save changes made to a file. Disk quota settings may also prevent the editor from saving changes.
When the “Always Create Backups” option is turned off and Hex Editor Neo determines that it is possible to do an effective save, it does not create a temporary file, and lowers its requirements on free volume space.
If you get a “not enough space” error message when trying to save a file, all your modifications are retained - you can free up the required space on the volume, or use the Save As… command to save the file on another volume.
Macros and scripts running in the editor may use the IDocument.saveAsync and IDocument.saveAsAsync methods to save changes made to the document.