FileList
От: jurmich  
Дата: 22.01.03 09:31
Оценка:
Podskazhite pls, kak polutchit spisok failov v zadannoj papke?
Re: FileList
От: mrhru Россия  
Дата: 22.01.03 09:39
Оценка:
Здравствуйте, jurmich, Вы писали:

J>Podskazhite pls, kak polutchit spisok failov v zadannoj papke?


FindFirst, FindNext
Евгений, с приветом (но без остроумной подписи, к сожалению )
Re: FileList
От: vit61  
Дата: 23.01.03 07:23
Оценка:
Здравствуйте, jurmich, Вы писали:

J>Podskazhite pls, kak polutchit spisok failov v zadannoj papke?

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;


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

Взято на DELPHI.mastak.ru
... << RSDN@Home 1.0 beta 5 >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.