Показать полную графическую версию : связь с физическим файлом...
bomberman
23-02-2010, 11:53
Сколько дней уже мучаюсь.
Подскажите  как работать с типом record и с файлом, т.е записать в файл данные используя тип record. И с каким расширением должен быть этот файл.
grafmoto
23-02-2010, 13:17
procedure TForm1.FormCreate(Sender: TObject);
type
  TestRec = record
    id: Integer;
    text: String[32];
  end;
var
  h: THandle;
  dummy: Cardinal;
  buf: TestRec;
begin
  buf.id:=1;
  buf.text:='hello';
  h:=CreateFile('c:\Downloads\test.txt', GENERIC_WRITE, 0, nil, CREATE_ALWAYS, 0, 0);
  WriteFile(h, buf, SizeOf(TestRec), dummy, nil); 
  CloseHandle(h);
end;
файл может быть с любым расширением. Но желательно чтобы не совпадал с "зарегистрированными программами". Обычно используют dat или bin чтобы показать что файл двочиный. Для записи в файл пойдёт всё, что может писать двоичные файлы: AssignFile+Write, CreateFile+WriteFile, object TDiskFile и т.д., на любой вкус есть. Если требуется записать в виде текста, надо перебирать члены record и поочерёдно писать в текстовый файл
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC