L
leobasic
Unregistered / Unconfirmed
GUEST, unregistred user!
procedure FileSearch(PathName:string);
var
F : TSearchRec;
Found : Boolean;
begin
ChDir(PathName);
Found := (FindFirst('*.*', faAnyFile, F) = 0);
while Found do
begin
if (F.Name = '.') or (F.Name = '..') then
begin
Found := (FindNext(F) = 0);
Continue;
end;
if (F.Attr and faDirectory)>0 then
begin
Application.ProcessMessages;
FileSearch(F.Name);
end;
//插入你的代码,F.Name就是文件名,GetCurrentDir可以得到当前目录
Found := (FindNext(F) = 0);
end;
FindClose(F);
ChDir('../');
end;
请问这段代码是怎样返回到第一文件夹的??难道FindNext有自动返回功能??如果一个文件夹里面有
很多子文件夹,程序为什么不会不停进入文件夹而漏掉部分文件没有搜索到。
var
F : TSearchRec;
Found : Boolean;
begin
ChDir(PathName);
Found := (FindFirst('*.*', faAnyFile, F) = 0);
while Found do
begin
if (F.Name = '.') or (F.Name = '..') then
begin
Found := (FindNext(F) = 0);
Continue;
end;
if (F.Attr and faDirectory)>0 then
begin
Application.ProcessMessages;
FileSearch(F.Name);
end;
//插入你的代码,F.Name就是文件名,GetCurrentDir可以得到当前目录
Found := (FindNext(F) = 0);
end;
FindClose(F);
ChDir('../');
end;
请问这段代码是怎样返回到第一文件夹的??难道FindNext有自动返回功能??如果一个文件夹里面有
很多子文件夹,程序为什么不会不停进入文件夹而漏掉部分文件没有搜索到。