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

Вниз

Запись/чтение динамического массива в/из файла - как?   Найти похожие ветки 

 
Vi   (2005-05-21 07:36) [0]

var a:array[0..10] of longword; <----- если задано статически, то получается -

fileopen, fileseek, fileread(дескриптор файла,a,sizeof(a)); fileclose(дескриптор файла);

если массив создан с setlength = не получается.
как осуществить?

получается только с динамическим массивом байтов...
getmem(dd,sk); fileseek(d,ofs,0); fileread(d,dd^,sk);


 
begin...end ©   (2005-05-21 08:02) [1]

var
 a: array of Longword;
begin
 SetLength(a, 11);
 ...
 // Чтение
 FileRead(дескриптор_файла, a[0], Length(a) * SizeOf(a[0]));
 ...
 // Запись
 FileWrite(дескриптор_файла, a[0], Length(a) * SizeOf(a[0]));
 ...
end.


 
charlie   (2005-05-21 08:04) [2]

var
 A: array of LongWord;
 LW: LongWord;

 // запись
 with TFileStream.Create("F:\array", fmCreate) do
 try
   LW := Length(A);
   Write(LW, SizeOf(LongWord));
   Write(PChar(A)^, LW*SizeOf(LongWord));
 finally
   Free
 end;

 //чтение
 with TFileStream.Create("F:\array", fmOpenRead) do
 try
   Read(LW, SizeOf(LongWord));
   SetLength(A, LW);
   Read(PChar(A)^, LW*SizeOf(LongWord));
 finally
   Free
 end;


 
Vi   (2005-05-21 08:25) [3]

Спасибо! то что нужно!



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

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

Наверх




Память: 0.47 MB
Время: 0.057 c
5-1086130651
Vinil
2004-06-02 02:57
2005.06.06
Как ограничить Memo ?


1-1116608902
френк
2005-05-20 21:08
2005.06.06
путь к сервису


14-1116617554
Sergey Masloff
2005-05-20 23:32
2005.06.06
Я в отпуске. Даже не верится... Отгуливаю за 2002 г. ;-)


4-1113391046
zero-g
2005-04-13 15:17
2005.06.06
Проблемма с установкой фона рабочего стола


4-1113558922
Serr
2005-04-15 13:55
2005.06.06
связь