各位大侠,我用此法搜索目录下的文件,但是对ntfs系统无效,求解!

episome 2004-09-20 09:40:17
各位大侠,我用此法搜索目录下的文件,但是对ntfs无效,求解!

日复一日,日急生悲.

// 函数,判定是否是目录
Function IsDir(SearchRec:TSearchRec):Boolean;
begin
Result:= (SearchRec.Attr=16) and (SearchRec.Name<>'.') and (SearchRec.Name<>'..');
end;

// 查找文件在目录下
Procedure FindFilesOnDir(sPath:string);
var
SearchRec:TSearchRec;
subdir:TStrings;
i:integer;
begin
subdir:=TStringList.Create;
//最后一个字符是路径分隔符则不变;否则加上一个路径分隔符返回
sPath := IncludeTrailingPathDelimiter(sPath);
//找出所有下级子目录。
if (FindFirst(sPath+'*.*', faDirectory, SearchRec)=0) then
begin
if IsDir(SearchRec) then
subdir.Add(SearchRec.Name);
while FindNext(SearchRec) = 0 do
begin
if IsDir(SearchRec) then
subdir.Add(SearchRec.Name);
end;
end;
FindClose(SearchRec);
//查找当前目录。
FindFirst(sPath + '*.*',faAnyFile - faDirectory,SearchRec);
if(not IsDir(SearchRec))then
// .....
while FindNext(SearchRec)=0 do
// .....
FindClose(SearchRec);
//递归部分,查找各子目录。
for i:=0 to subdir.Count-1 do
FindFilesOnDir(sPath + subdir.Strings[i]+ '\');
subdir.Free;
end;
...全文
86 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
episome 2004-09-23
  • 打赏
  • 举报
回复
这几天没空看,揭帖.
khkhing 2004-09-20
  • 打赏
  • 举报
回复
关注
episome 2004-09-20
  • 打赏
  • 举报
回复
也不清楚, fat32 下面都好好的.
ntfs下面就不行.
偶测试一下,行了给分.
drift1981 2004-09-20
  • 打赏
  • 举报
回复
跟ntfs应该没什么关系,换种方法试试
http://community.csdn.net/Expert/topic/3384/3384292.xml?temp=6.838626E-02

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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