Текущий архив: 2003.02.27;
Скачать: CL | DM;
Вниз
Оптимизация поиска в файлах Найти похожие ветки
← →
Hint © (2003-02-17 13:03) [0]Требуется в куче файлов заменить одну фразу на другую. Файлы много и бывают довольно-таки большие (несколько мегабайт). Сейчас файл загоняю в переменную типа string и использую pos.
Получается очень медленно. Как это дело можно оптимизировать?
← →
Андрей Сенченко © (2003-02-17 13:28) [1]"Файлы бывают довольно-таки большие <...> загоняю в переменную типа string"
несостыковочка получается. String врядли потянет длину строкивесом в мегабайт. Может быть Ты уточнишь ЧТО КОНКРЕТНО Ты делаешь ?
← →
MBo © (2003-02-17 13:54) [2]String(Ansi)-то потянет мегабайт, только стандартные функции медленно будут работать. Посмотри http://www.optimalcode.com/examples.htm
← →
Hint © (2003-02-17 13:54) [3]Согласно моим данным (delphi6.hlp) AnsiString потянет до 2 ГИГАбайт.
Конкретно:
LoadFromFile грузим файл в TStringList и запихиваем Text в переменную.
← →
Hint © (2003-02-17 14:00) [4]To MBo
Спасибо, попробуем разобраться...
← →
MBo © (2003-02-17 14:02) [5]>LoadFromFile грузим файл в TStringList и запихиваем Text в переменную.
Может, быстрее будет TFileStream и содержимое в строку?
← →
Hint © (2003-02-17 14:06) [6]Гм, LoadFromFile сам использует TFileStream. Ускорение будет не очень большим, не критично я думаю...
← →
Anatoly Podgoretsky © (2003-02-17 14:10) [7]Ускорение будет критичное, LoadFromFile не только грузит, но и формирует TStringList, TFileStream только грузит, при том в заранее распределенную строку, она для него буфер. При этом скорость в зависимости от диска и процессора может достигать десятком мб в секунду.
← →
Hint © (2003-02-17 14:16) [8]Да, действительно, спасибо, занесем в список :o)
Страницы: 1 вся ветка
Текущий архив: 2003.02.27;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.016 c