파일 찾기를 하려고 하는데 해당 폴더 이하 하위 폴더까지 검색해서 찾아내려고 합니다.
어떻게 해야 하나요? 예제 소스를 올렸는데 예를 들어 FolderName 에 'C:' 를 쓰면
C: 이하 있는 하위 폴더까지 순차적으로 모두 검색해서 StringGrid에 삽입하는 겁니다.
부탁합니다.
[소스]
function TForm1.FindFile(FolderName: String): Integer;
var
RowIndex : Integer;
SR : TSearchRec;
begin
if (findFirst(FolderName+'\*.txt',faAnyFile,Sr)) = 0 then
repeat
if (Sr.Name <> '.') and (Sr.Name <> '..') then
begin
if (SR.Attr and faDirectory) = faDirectory then
begin
FindFile(FolderName + '\'+SR.Name);
end
else
begin
RowIndex := StringGrid1.RowCount;
StringGrid1.RowCount := StringGrid1.RowCount + 1;
StringGrid1.Cells[0,RowIndex] := IntToStr(RowIndex);
StringGrid1.Cells[1,RowIndex] := FolderName+'\'+Sr.Name;
end;
end;
until FindNext(Sr) <> 0;
FindClose(Sr);
end;