Вниз
Скачать: CL | DM;

О DBF-файлах   Найти похожие ветки 

 
ИМХО ©   (2004-06-01 06:27) [0]

Как по заголовку в dbf-файле узнать, dBase это (это dBase, то какой), FoxPro ли, Clipper и т.д.?
Поделитесь, плиз, способом определения.


 
sniknik ©   (2004-06-01 08:37) [1]

по заголовку не всегда можно, различия до dBase IV минимальны (а после критичы :) другим не откроеш) проще по индексу, а в заголовке есть байт определяющий тип (только старый фокс в этот байт пишет признак dBase III, можеш скачать имеющий исходники многотипный движок и посмотреть как он определяет, Halcyon к примеру).
и кстати Clipper "всеяден" может работать с фоксовыми(возможно и другими) таблицами без изменения структуры. (родную сразу видно когда на заголовок смитриш, на работу дойду могу показать разницу)
только думаю основной вопрос не в этом, не из абстрактного любопытства же понадобилось.

из Halcyon заголовок описание (только это не единственное место где упоминаются типы)

  GSR_DBFHeader = packed Record
     DBType     : Byte;
     Year       : Byte;
     Month      : Byte;
     Day        : Byte;
     RecordCount: LongInt;
     Location   : Word;
     RecordLen  : Word;
     Reserve1   : Array[0..1] of Byte;
     TranIncmpl : byte;
     Encrypted  : byte;
     MultUseFlg : Longint;
     UserIDLast : Longint;               {!!RFG 081897}
     Reserve2   : Array[0..3] of Byte;
     DBTableFlag: Byte;                  {Table Flags}
                                         {  1 = production index}
                                         {  2 = has memos (VFP)}
                                         {  4 = is a DBC (VFP)}
     LangID     : Byte;
     Reserve3   : Array[0..1] of Byte;
  end;


 
sniknik ©   (2004-06-01 08:40) [2]

вот еще это в типах мемо поля

GSobjMemo  = class(GSO_DiskFile)
     Owner        : GSO_DiskFile;
     TypeMemo     : Byte;   {83 for dBase III; 8B for dBase IV; F5 for FoxPro}
     MemoLocation : Longint;         {Current Memo record}
     MemoBloksUsed: word;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
1-1086790419
TUser
2004-06-09 18:13
2004.06.27
Invalid parameter


9-1078383882
hfa_
2004-03-04 10:04
2004.06.27
Привет! В написание игр и по составлению их алгоритмов я ноль..Но


8-1080722002
Pul
2004-03-31 12:33
2004.06.27
Битмап в метафайле


3-1085745467
half_litre
2004-05-28 15:57
2004.06.27
MultiThread доступ


14-1086331022
31512
2004-06-04 10:37
2004.06.27
MS Visual C++ vs Borland C++ Builder - что лучше?




   Наверх