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

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

Быстрый доступ к файлу [D7]


Страницы:   1 2

pirate ©   (2006-05-24 21:15:00) 

Уважаемые мастера!
Пожалуйста, посоветуйте самый быстрый способ побайтового чтения всего файла (Он у меня 16 Мб, загружается около 2 минут). А вот к примеру Lingvo загружает свою базу слов практически мгновенно. Как бы и мне ускорить процесс чтения из файла?


begin...end   (2006-05-24 21:54:00) [21]

> pirate ©   (24.05.06 21:44) [6]

Вполне приличный код. У меня он читает 13-мегабайтный файл за время менее 1 секунды. Вероятно, основное время у Вас занимает обработка того, что прочитано (в цикле по i).


pirate   (2006-05-24 21:44:00) [22]

Адын момент...

procedure LoadDict(path:string;var D:TDict);
var
 FromF: file;
 NumRead: Integer;
 Buf: array[1..512] of Char;
...
 i:integer;
..
begin
...
  AssignFile(FromF, path);
   Reset(FromF, 1);
   repeat
       BlockRead(FromF, Buf, SizeOf(Buf), NumRead);
        for i:=1 to numread do
        begin
        ....
        end;
     until (NumRead = 0);
     CloseFile(FromF);
end;


begin...end   (2006-05-24 21:40:00) [23]

> pirate ©   (24.05.06 21:35) [4]

А можно увидеть, КАК Вы его используете?


pirate   (2006-05-24 21:35:00) [24]

Я вот простой blockread использую. Что-то никогда TFileStream не юзал..


pirate   (2006-05-24 21:26:00) [25]

А у меня по моему структура тоже не маленькая.
И еще. Может подкинете пару ссылок на инфу о том как юзать TFileStream или свой пример?


begin...end   (2006-05-24 21:20:00) [26]

А зачем читать файл побайтно?


Cash   (2006-05-24 21:20:00) [27]

Потаму, что Lingvo не побайтово читает! У него есть структура словаря.
Словарь в файле, программа читает структуру и формирует словарь.
Поэтому она работает быстрее.

Используй TFileStream, низкий уровень и всякие такие примочки хорошо
сказываются на общении с файлом.


Страницы:   1 2

Наверх

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