Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];




Вниз

Чтение из файла в динамический массив. 


Aris   (2002-02-26 13:16) [0]

Добрый день!
Не могли бы Вы помочь мне со следующим вопросом:

1.Как читать в динамический массив "block:array of single" из файла блоком?
setlength(block,blocksize div 4); //blocksize - размер в байтах
bytesread:=fileread(filehandle,block,blocksize);

-не работает никак. При размере блока > примерно 10к вообще
bytesread=-1.

Если объявляю как "block:^arr" , где "arr=array[1..high(integer)] of
single", и выделяю потом память getmem-ом, то работает:
bytesread:=fileread(filehandle,block^,blocksize);
но с таким массивом не работает функция copy. Можно ли скопировать
часть одного такого массива в другой без ее помощи?

2. Можно ли сложить элементы одного динамического массива с элементами
другого дин. массива, кроме как последовательным сложением в цикле?

Заранее спасибо за ответ!



-=CrazyFish=-   (2002-02-26 13:55) [1]

читать нужно не в block, а в block[0]



MBo   (2002-02-26 13:59) [2]

var a:array of single;
i:integer;
fs:tfilestream;
begin
fs:=tfilestream.create(nameoffile,fmOpenread);
i:=100;
setlength(a,i);
fs.Read(a[0],i*sizeof(single));
fs.free;

если сам пишешь файл, в начале лучше писать длину блока
и при чтении сначала ее определчть




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.14;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.015 c
1-42992           Zool                  2002-02-28 10:38  2002.03.14  
jpg


14-43136          Polevi                2002-01-28 16:29  2002.03.14  
IIS не поддерживает сервлеты :( Свинство просто..


1-43024           IronHawk              2002-02-28 16:53  2002.03.14  
Как создавать дочерние формы в единственном экземпляре ?


14-43159          Satrap                2002-01-30 09:30  2002.03.14  
Глупый вопрос


1-43102           A.L.                  2002-02-14 14:05  2002.03.14  
Form2.Parent:= Form1