From: Eugen Taratukhin <eugen@eugenhm.riak.lugansk.ua>
Organization: K&K Agency
>From: Igor O. Rosselevich <igor_new@mltrading.spb.su>
>У меня возникла проблемма связанная со структурой DBF файлов.
>Неподскажет ли кто из чего эти файлы состоят,и как их создать
>в Паскале.
>Может у кого есть что-нибудь готовое?
Надеюсь, эта информация будет полезной.
В DBF файле сначала идет заголовок, затем
дескрипторы полей, затем содержимое базы. Далее следуют
описания заголовка и дескриптора поля. Запись имеет
структуру описанную дескрипторами полей, но начальным
байтом идет признак уделенной записи '*' или ' '.
{ Структура заголовка файла DBF (по материалам:
R.Freeland "The DBF divulged", Data Based Advisor, June, 1990) }
DBFHeader = record
Version : byte; { Заголовочный байт }
yy,mm,dd : byte; { Дата последнего обновления файла }
MaxRecs : longint; { Число записей в файле, вместе с уд-ми }
HplusD : word; { Общая дина заголовка и списка д-ров полей }
RecLen : word; { Длина одной записи }
Reserv1 : integer; { Зарезервировано }
HoldTrans : byte; { Флаг задержки по транзакции }
Res2 : array[15..27] of byte; { Зарезервировано }
IsMDX : byte; { Признак подключения MDX-файла}
Res3 : array[29..31] of byte; { Зарезервировано }
end;
{ Структура дескриптора поля в файле DBF (по материалам:
R.Freeland "The DBF divulged", Data Based Advisor, June, 1990) }
Type
FieldDesc = record
Name : array [1..11] of byte; { Имя поля }
Typ : char; { Тип }
Res : longint; { Резерв }
Len : byte; { общая длина поля }
Dec : byte; { число цифр после дес.точки }
Res2 : array[1..13] of byte; { Резерв }
Tag : byte; { Признак тага MDX }
end;
--
# Eugen Taratukhin, Advertising & News Agency K&K
# Node RIAK, ingeneer. +7 (06444) 32185 (voice).
|