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

Вниз

Как сделать нормальный буффер   Найти похожие ветки 

 
Semen   (2010-09-03 08:25) [0]

Есть код
 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.


 
MBo ©   (2010-09-03 08:32) [1]

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


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

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


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

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


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

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


 
Semen   (2010-09-03 09:05) [5]

а как надо?


 
MBo ©   (2010-09-03 09:16) [6]

f.Read(buf[0]


 
Leonid Troyanovsky ©   (2010-09-03 11:28) [7]


> Semen   (03.09.10 08:25)  

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

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

--
Regards, LVT.



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

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

Наверх




Память: 0.48 MB
Время: 0.005 c
6-1229425388
Mozgan
2008-12-16 14:03
2010.11.28
подключиться к FTP через http прокси.


2-1283274103
oleg_teacher
2010-08-31 21:01
2010.11.28
sql+if


15-1282342827
Rouse_
2010-08-21 02:20
2010.11.28
Ega23 - это залет номер два :)


2-1283688884
nubik
2010-09-05 16:14
2010.11.28
Как вывести в сообщении знак


2-1283772860
Alexandr
2010-09-06 15:34
2010.11.28
Извлечение информации из файла Word