Главная страница
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.047 c
4-1113303401
Stalker01
2005-04-12 14:56
2005.06.06
Скрыть папку


1-1116486365
heady
2005-05-19 11:06
2005.06.06
Ctrl+A в Memo


1-1116699184
seregka
2005-05-21 22:13
2005.06.06
Запуск программы из контекстного меню IE


1-1116506572
Cat
2005-05-19 16:42
2005.06.06
строку по одной цифре раскидать в массив Integer


1-1116916210
race1
2005-05-24 10:30
2005.06.06
редактор форм