Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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;

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



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

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

Наверх





Память: 0.44 MB
Время: 0.005 c
1-43081
Delph
2002-02-27 13:53
2002.03.14
Преобразование строки разных форматов в дату.


7-43187
Kostya Luzan
2001-12-08 03:59
2002.03.14
Эмулировать СОМ


1-43027
Michael C
2002-02-26 10:03
2002.03.14
Ув. мастера. Немогу сравнить два str значения...


3-42933
Jony
2002-02-14 13:21
2002.03.14
Дополнительное редактируемое поле в ADODataSet


3-42910
volodya_
2002-02-14 09:33
2002.03.14
Как в Qreport выводить в конце каждой страницы сумму значений по странице.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский