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

Вниз

Ускорение поиска файлов   Найти похожие ветки 

 
Dmitrij_K   (2005-12-29 13:34) [0]

У меня есть алгоритм, который ищет в определенной папке каталоги, а в найденных каталогах смотрит есть ли там хоть один файл(вот тут как-раз очень долго работает). Как можно ускорить этот алгоритм?

function daj_typ(const dir:AnsiString):Integer;
var ret : Integer;
   ssr : TSearchRec;
begin
 ret := 0;
 if FindFirst(daj_slash(dir)+"*.*", faAnyFile, ssr)=0 then
 begin
   repeat
     if (ssr.Attr and faDirectory)=0 then
     begin
       ret := 1;
       break;
     end;
   until FindNext(ssr)<>0;
 end
   else
 begin
   ret := 2;
 end;
 FindClose(ssr);
 result := ret;
end;


 
TUser ©   (2005-12-29 13:45) [1]

Ускорить вряд ли. Смущает также вот такое условие

> daj_slash(dir)+"*.*"

У тебя все папки имеют точку в названии?


 
Anatoly Podgoretsky ©   (2005-12-29 13:45) [2]

Здесь нет поиска во вложенных папках


 
Dmitrij_K   (2005-12-29 14:40) [3]


> У тебя все папки имеют точку в названии?

Всегда так использую, и все находит.
Перефразируя, как быстро проверить, находится ли в папке что-нибудь?
На чистом винапи, те через findfirstfile ускорение минимальное.



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

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

Наверх




Память: 0.47 MB
Время: 0.034 c
8-1122221174
rolex
2005-07-24 20:06
2006.01.22
Как подать на колонки звук определенной частоты???


2-1135759223
Max Zyuzin
2005-12-28 11:40
2006.01.22
Составляю SQL запросик


9-1123566931
Shopot
2005-08-09 09:55
2006.01.22
Как сделать так, чтобы игра соединялась по модему.


1-1134635289
oleggar
2005-12-15 11:28
2006.01.22
C+Delphi


14-1135413928
Сафаров
2005-12-24 11:45
2006.01.22
рисунки на кнопки