|
| |
dBASE II : File header structure
00h BYTE dBASE version number: 02h=dBASE II
01h WORD Number of data records in file
03h BYTE Month of last update
04h BYTE Day of last update
05h BYTE Year of last update
06h WORD Size of each data record
08h 512 BYTEs 32 X 16 byte field Descriptors, see below
208h BYTE 0Dh if all 32 field descriptors are used, else 00h
: dBASE II file header has a fixed size of 521 (209h) bytes
dBASE III : File header structure
00h BYTE dBASE vers num 03h=dBASE III w/o .DBT
83h=dBASE III w .DBT
01h BYTE year of last update
02h BYTE month of last update
03h BYTE day of last update
04h DWORD long int number of data records in file
08h WORD header structure length
0Ch WORD data record length
0Eh 20 BYTEs version 1.0 reserved data space
20h XX BYTEs 32 byte field descriptors, see below
XXh BYTE 0Dh field terminator.
: Unlike dBASE II, dBASE III has a variable length header
dBASE II and dBASE III Field Descriptors
: dBASE II Field Descriptors (header contains 32 FDs)
00h 11 BYTEs ASCIIZ field name, 0Dh first byte indicates END
0Bh BYTE Data type, Char/Num/Logical (C,N,L)
0Ch BYTE Field length
0Dh WORD Field data address, (set in memory)
0Fh BYTE Number of decimal places
dBASE III Field Descriptors (FD count varies):
00h 11 BYTEs ASCIIZ field name string
0Bh BYTE Data type, Char/Num/Logical/Date/Memo
0Ch DWORD Long int field data address, (set in memory)
10h BYTE Field length
11h BYTE Number of decimal places
12h 14 BYTEs Version 1.00 reserved data area |