dBASE - File Header Structure (dBASE II)

 	Offset Size	      Description

	  00   byte    dBASE version number 02h=dBASE II
	  01   word    number of data records in file
	  03   byte    month of last update
	  04   byte    day of last update
	  05   byte    year of last update
	  06   word    size of each data record
	  08 512bytes  field descriptors  (see below)
	 520   byte    0Dh if all 32 field descriptors used; otherwise 00h

	- dBASE II file header has a fixed size of 521 bytes


DBASE - File header structure (DBASE III)

Offset Size Description 00 byte dBASE vers num 03h=dBASE III w/o .DBT 83h=dBASE III w .DBT 01 byte year of last update 02 byte month of last update 03 byte day of last update 04 dword long int number of data records in file 08 word header structure length 10 word data record length 12 20bytes version 1.0 reserved data space 32-n 32bytes ea. field descriptors (see below) n+1 byte 0dH field terminator. - unlike dBASE II, dBASE III has a variable length header

dBASE - Field Descriptors

dBASE II Field Descriptors (header contains 32 FDs) Offset Size Description 00 11bytes null terminated field name string, 0Dh as first byte indicates end of FDs 11 byte data type, Char/Num/Logical (C,N,L) 12 byte field length 13 word field data address, (set in memory) 15 byte number of decimal places dBASE III Field Descriptors (FD count varies): Offset Size Description 00 11bytes null terminated field name string 11 byte data type, Char/Num/Logical/Date/Memo 12 dword long int field data address, (set in memory) 16 byte field length 17 byte number of decimal places 18 14bytes version 1.00 reserved data area