Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: CL | DM;

Вниз

свой тип файлов   Найти похожие ветки 

 
Green_Templar ©   (2005-06-08 01:58) [0]

можно делать file of g, где g=какой-то там рекорд. А у меня есть 3 рекорда разного типа, как их записать в один файл?


 
Просто Джо ©   (2005-06-08 02:23) [1]

Да по-разному. Например так:

var
 Fv: file;
 Rec1: TMyRec1;
 Rec2: TMyRec2;
..
   BlockWrite(Fv,Rec1,SizeOf(Rec1));
   BlockWrite(Fv,Rec2,SizeOf(Rec2));

Или так:

var
 Rec1: TMyRec1;
 Rec2: TMyRec2;
 FS: TFileStream;
begin
 Rec1.A := $FD;
 Rec1.B := $FF;
 FS := TFileStream.Create("i:\test.dat",fmCreate);
 try
   FS.Write(Rec1,SizeOf(Rec1));
   FS.Write(Rec2,SizeOf(Rec2));
 finally
   FS.Free;
 end;
end.

А, возможно, лучше "обернуть" рекорды в классы, каждый со своим методом записи/чтения в/из файла/стрима.


 
Anatoly Podgoretsky ©   (2005-06-08 09:08) [2]

TThreeRecords = record
 R1: TRec1;
 R2: TRec2;
 R3: TRec3;
end;

file of TThreeRecords;


 
Antonn ©   (2005-06-08 13:56) [3]

Anatoly Podgoretsky ©   (08.06.05 9:08) [2]
а у меня ругалось, если "TThreeRecords" была больше мегабайта...


 
Просто Джо ©   (2005-06-09 04:16) [4]


>  [3] Antonn ©   (08.06.05 13:56)
> Anatoly Podgoretsky ©   (08.06.05 9:08) [2]
> а у меня ругалось, если "TThreeRecords" была больше мегабайта...

Чего у тебя ругалось?


 
Просто Джо ©   (2005-06-09 04:24) [5]

А, наверное, 998... Или переполнение стека, если переменная в процедуре объявлялась.


 
Anatoly Podgoretsky ©   (2005-06-09 08:52) [6]

Antonn ©   (08.06.05 13:56) [3]
Ну у многих ругается за ошибки. Совет чтобы не ругалось пиши программы без ошибок.



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

Текущий архив: 2005.06.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.026 c
9-1111275692
Green_Templar
2005-03-20 02:41
2005.06.29
TDXImageList


3-1113979898
pavel_guzhanov
2005-04-20 10:51
2005.06.29
SQLQuery и MySQL


3-1116495496
Term
2005-05-19 13:38
2005.06.29
Как получить информацию о количестве обработанных записей если


8-1110174747
X-Disa
2005-03-07 08:52
2005.06.29
Работа с ICO


4-1114683614
psa247
2005-04-28 14:20
2005.06.29
Корзина Windows