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

Вниз

Еще раз Поиск фалов....   Найти похожие ветки 

 
TankMan ©   (2002-10-07 00:33) [0]

Я вижу тут задавали вопрос по поводу поиска файла, но у меня другая проблема, я знаю как искать, знаю как пользоватся, но вот например у меня здача найти все файлы в указанной директории и поддирикториях, все файлы - дубликаты, точнее, файлы, имеющие одинаковое имя, но разное разширение, я парился всю ночь но понял, что очень сильно запутался, я смог искать файлы, только в в указанной директории, и в поддиректориях первого уровня, но код получился оочень громоздкий, и я понял, что поддиректории хотябы 2 уровня мне не осилить, может я делаю что-то принципиально не правильно, может кто-то даст пример эффективного поиска, хотябы просто файлов в указанной директории, и поддиректориях.
Заранее благодарен


 
rhf ©   (2002-10-07 00:49) [1]

ищте файлы по маске в текущей папке
затем для каждой вложенной папки вызываете эту же процедуру
получаете рекурсию...........


 
TankMan ©   (2002-10-07 00:58) [2]

Я это понимаю, но при попытке это реализовать... у меня не получилось просто напросто... я запутался вообще...
не льзя ли примерчик?


 
Pat ©   (2002-10-07 01:16) [3]

>пример эффективного поиска, хотябы просто файлов в указанной
>директории, и поддиректориях

procedure ScanDir(aPath: String; var aList: TStringList);
var
SR: TSearchRec;
tPath: String;
begin
tPath := IncludeTrailingBackSlash(aPath);
if FindFirst(tPath+"*.*",faAnyFile,SR) = 0 then
begin
try
repeat
if SR.Name[1]="." then Continue;
case (SR.Attr and faDirectory) of
faDirectory: ScanDir(tPath+SR.Name,aList);
else aList.Add(tPath+SR.Name);
end;
until FindNext(SR)<>0;
finally
sysutils.FindClose(SR);
end;
end;
end;



 
Dimka Maslov ©   (2002-10-07 10:38) [4]

http://delphibase.endimus.com/?action=viewfunc&topic=fileops&id=10046



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
14-59345
Сатир
2002-10-28 16:56
2002.11.18
Создание плагинов для Delphi


1-59206
sad
2002-11-04 09:53
2002.11.18
Печать канвы TeeChart


4-59492
Ученик
2002-10-08 08:31
2002.11.18
Отключение масштабирования диалога


14-59398
DDS
2002-10-28 09:41
2002.11.18
Чудеса с монитором.


7-59450
Viktor Kushnir
2002-09-16 08:50
2002.11.18
Работа с памятью.