Советы по Delphi

         

Файл с множеством записей


Обычно, я использую файл с заголовком, который я затем загружаю в память, и использую его для поиска необходимой мне записи.

    Type
TSaveHeader = Record scene    : Integer; hotspots : LongInt; talk     : LongInt; hype     : LongInt; End;
Var
SaveHeader : TSaveHeader;


Procedure OpenSaveFile(fname : String);
Var
f : File; i : Integer; Begin
AssignFile(f, fname); Reset(f, 1); BlockRead(f, SaveHeader, Sizeof(TSaveHeader)); { получаем один набор записи } Seek(f, SaveHeader.hotspots); For i := 1 To 50 Do BlockRead(f, somevar, sizeof_hotspotrec); { и так далее } CloseFile(f); End;

{ предположим, что файл открыт }
Procedure GetHotspotRec(index : LongInt; Var hotspotrec : THotspot);
Var
offset : LongInt; Begin
offset := SaveHeader.hotspots + index * Sizeof(THotSpot); Seek(f, offset); BlockRead(f, hotspotrec, Sizeof(THotspot)); End;

[001674]



Содержание раздела