Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как сделать нормальный буффер [D2005, XP]


Semen ©   (2010-09-03 08:25:00) 

Есть код
 var
   buf:array[1..1000] of char;
 begin
 f:=TFileStream.Create('test',fmOpenRead);
 f.Read(buf,1000);

Как сделать, чтобы Delphi в зависимоти,скажем, от параметра x создавала буффер этой длинны, в который можно писать данные f.Read.
Допустим сейчас мне не нуже буфер на 1000 символов, а нужен на 100,
а потом на 1.000.000.


Leonid Troyanovsky   (2010-09-03 11:28:00) [1]


> Semen   (03.09.10 08:25)  

> Допустим сейчас мне не нуже буфер на 1000 символов, а нужен

В большинстве случаев буфер фиксированного
(оптимального) размера нормален.

--
Regards, LVT.


MBo   (2010-09-03 09:16:00) [2]

f.Read(buf[0]


Semen   (2010-09-03 09:05:00) [3]

а как надо?


Медвежонок Пятачок   (2010-09-03 08:55:00) [4]

а указал ты не туда, куда надо


Медвежонок Пятачок   (2010-09-03 08:53:00) [5]

Все пишет. Но пишет ровно туда, куда ты указал.


Semen   (2010-09-03 08:47:00) [6]

Динамический массив и строка не работают.
К примеру вот:
var
 buf:array of char;
begin
 SetLength(buf,1000000);
f:=TFileStream.Create('test',fmOpenRead);
f.Read(buf,1000);
Ничерта в буфер на пишет.


MBo   (2010-09-03 08:32:00) [7]

для char - string,  а в общем случае - динамические массивы (Dynamic Arrays)


Наверх

Титульная страница Поиск, карта сайта Написать письмо