Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.11.28;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
2-1283425358
bostar
2010-09-02 15:02
2010.11.28
про пиктограммы


2-1283158922
azamatufa
2010-08-30 13:02
2010.11.28
Что лучше использовать BDE или ADO ?


15-1282377068
Дмитрий2
2010-08-21 11:51
2010.11.28
wwDBRichEditMSWord


3-1248293189
GanibalLector
2009-07-23 00:06
2010.11.28
cannot attach to password database


2-1284094963
6ruse
2010-09-10 09:02
2010.11.28
зачеркивание в DBGrid





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский