Defining Data Field

A data field is a file area assigned a type and an optional name. For example, if we know that a given area contains a time stamp, we can declare it an 8-byte FILETIME area named ftCreationTime. If we talked about a program and not about a static data file, we would call such an object a variable.

You can declare a selected area a data field, that is associate with it a type and, optionally, a name.

Declaring a Data Field

To define a data field select the area (1, 2, 4, 8, or 16 bytes) and choose the Edit / Define Data Field menu command. The field name is for your convenience only, so you can leave it blank or give the same name to several different fields. Pressing the OK button creates a new data field with the address and the size defined by the current selection. The Data Field Pane lets you quickly browse the defined fields.

FlexHEX supports the following data types:

Type Size, bytes
Integer 1, 2, 4, or 8
Float 4 or 8
Floating-point DATE 8
time_t 4

After the data field is defined, you can use the Edit Data Field command to change its type or value (of course you can also change its value directly entering new data in the main edit window).

Field anchoring specifies how editing operations affect the data field position. Anchoring might be important when you are editing a file in the Insert mode, that is when insert/delete operations cause the rest of the file to shift up or down. A fixed data field never changes its location; a sticky data field moves with the data.

You can use the Load/Save Template command in the FlexHEX File menu to load or save your bookmarks and data field definitions.

The comma character is not allowed in data field names to avoid parse errors during template load.