DELPHI问题

lavin66 2008-01-11 04:02:05
procedure FindFiles(APath, AFile: string; Strings1: Tstrings);
var
FindResult: integer;
FSearchRec, DSearchRec: TSearchRec;
function IsDirNotation(ADirName: string): Boolean;
begin
Result := ((ADirName = '.') or (ADirName = '..') or (ADirName = 'RCM_EMAIL_FILE') or (ADirName = 'ODL_Encrypt'));
end;
begin
if APath[Length(APath)] <> '' then APath := APath + '';
// 在根目录中查找指定文件
FindResult := FindFirst(APath+'\' + AFile, faAnyFile + faHidden +faSysFile + faReadOnly, FSearchRec);
try
while FindResult = 0 do
begin
Strings1.Add(APath+'\' + FSearchRec.Name);
FindResult := FindNext(FSearchRec); // 查找下一个指定文件
end;
//进入当前目录的子目录继续查找
FindResult := FindFirst(APath+'\' + '*.*', faDirectory, DSearchRec);
while FindResult = 0 do
begin
if ((DSearchRec.Attr and faDirectory) = faDirectory)
and not IsDirNotation(DSearchRec.Name) then
begin
FindFiles(APath+'\' + DSearchRec.Name, AFile,Strings1); //递归调用FindFiles函数
end;
FindResult := FindNext(DSearchRec);
end;
finally
FindClose(FSearchRec);
end;
这段代码是写的在指定目录下遍历所有文件的吧,我不是做DELPHI的,有些不太明白。中间这段
begin
Result := ((ADirName = '.') or (ADirName = '..') or (ADirName = 'RCM_EMAIL_FILE') or (ADirName = 'ODL_Encrypt'));
end;有什么作用? 是不是排除'RCM_EMAIL_FILE'与'ODL_Encrypt'这两个目录(RCM_EMAIL_FILE,'ODL_Encrypt'是是两个文件夹名),不查找这两个文件夹里的文件?
...全文
72 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
ly_liuyang 2008-01-11
  • 打赏
  • 举报
回复
嗯~自己说对了

1,594

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧