D
destroy
Привет всем.
Вообщем имеется код, для поиска файлов в папке и под папках
[codebox]
procedure FindFiles(StartFolder, Mask: string; List: TStrings;
ScanSubFolders: Boolean = True);
var
SearchRec: TSearchRec;
FindResult: Integer;
s2s: integer;
s3s,s_test: string;
s4s: integer;
begin
List.BeginUpdate;
try
StartFolder := IncludeTrailingBackslash(StartFolder);
FindResult := FindFirst(StartFolder + '*.*', faAnyFile, SearchRec);
try
while FindResult = 0 do
with SearchRec do
begin
if (Attr and faDirectory) <> 0 then
begin
if ScanSubFolders and (Name <> '.') and (Name <> '..') then
FindFiles(StartFolder + Name, Mask, List, ScanSubFolders);
end
else
begin
if MatchesMask(Name, Mask) then
List.Add(StartFolder + Name);
end;
FindResult := FindNext(SearchRec);
end;
finally
FindClose(SearchRec);
end;
finally
List.EndUpdate;
end;
end;
[/codebox]
Подскажите пожалуйста как процедурку модифицировать, чтобы при поиске файлов писалось еще и название папки.
Тоесть идет в начале название папки а потом файлы, которые найдены. Но важный момент. Если в папке нет
файлов - название папки добавлять не надо.
Чтобы добавлялась папка я знаю как сделать. А вот как сделать чтобы папка не добавлялась если в ней не найдено файлов?
Вообщем имеется код, для поиска файлов в папке и под папках
[codebox]
procedure FindFiles(StartFolder, Mask: string; List: TStrings;
ScanSubFolders: Boolean = True);
var
SearchRec: TSearchRec;
FindResult: Integer;
s2s: integer;
s3s,s_test: string;
s4s: integer;
begin
List.BeginUpdate;
try
StartFolder := IncludeTrailingBackslash(StartFolder);
FindResult := FindFirst(StartFolder + '*.*', faAnyFile, SearchRec);
try
while FindResult = 0 do
with SearchRec do
begin
if (Attr and faDirectory) <> 0 then
begin
if ScanSubFolders and (Name <> '.') and (Name <> '..') then
FindFiles(StartFolder + Name, Mask, List, ScanSubFolders);
end
else
begin
if MatchesMask(Name, Mask) then
List.Add(StartFolder + Name);
end;
FindResult := FindNext(SearchRec);
end;
finally
FindClose(SearchRec);
end;
finally
List.EndUpdate;
end;
end;
[/codebox]
Подскажите пожалуйста как процедурку модифицировать, чтобы при поиске файлов писалось еще и название папки.
Тоесть идет в начале название папки а потом файлы, которые найдены. Но важный момент. Если в папке нет
файлов - название папки добавлять не надо.
Чтобы добавлялась папка я знаю как сделать. А вот как сделать чтобы папка не добавлялась если в ней не найдено файлов?