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

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

Компонент для работы с файлами [D6, D7, Win95/98, WinME, NT4, Win2k, WinXP]


Алексей ©   (2004-06-18 15:08:00) 

Помогите, пожалуйста! Нужен компонент для поиска файлов с нужным расширением.


Anatoly Podgoretsky   (2004-06-18 16:06:00) [1]

В ru.delphi FAQ есть более четкий пример, именно с нужным расширением, пример от ЮЗ. Тут важно понимать что хочешь сделать.


TUser   (2004-06-18 16:02:00) [2]


> привожу пример Анатолия надеюсь он не обидется!!!!!!

Если не ошибаюсь, у него на сайте и компонент соотвествующий есть. А вообще, практически такой же пример приведен в справке.


lena19   (2004-06-18 15:22:00) [3]

привожу пример Анатолия надеюсь он не обидется!!!!!!

Как получить список файлов со всеми подкаталогами (04.03.02 18:15)

procedure ScanDir(StartDir: string; Mask:string; List:TStrings);
var  
SearchRec : TSearchRec;
begin  
if Mask = '' then Mask := '*.*';
 if StartDir[Length(StartDir)] <> '\' then StartDir := StartDir + '\';
 if FindFirst(StartDir+Mask, faAnyFile, SearchRec) = 0 then
begin repeat  Application.ProcessMessages;
     if (SearchRec.Attr and faDirectory) <> faDirectory then
      List.Add(StartDir + SearchRec.Name)    
 else
if (SearchRec.Name <> '..') and (SearchRec.Name <> '.') then
begin      
 List.Add(StartDir + SearchRec.Name + '\');
       ScanDir(StartDir + SearchRec.Name + '\',Mask,List);
     end;    
until FindNext(SearchRec) <> 0;
   FindClose(SearchRec);  
end;
end;

Пример вызова, параметры
1. имя папки
2. маска, по умолчанию *.*
3. хранилище для резульатат,
 любой наследник от TString, например TStringList

procedure TForm1.Button1Click(Sender: TObject);
begin  ListBox1.Items.Clear;
 ScanDir('c:','',ListBox1.Items);
 Label1.Caption := IntToStr(ListBox1.Items.Count);end;

С уважением
Анатолий Подгорецкий


Алексей   (2004-06-18 15:16:00) [4]

Спасибо!


Fay   (2004-06-18 15:15:00) [5]

FindFirstFile


Andy BitOff   (2004-06-18 15:15:00) [6]

Функция FindFirst + F1


Наверх

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