• 主页
  • 招聘
  • 语言基础/算法/系统设计
  • 数据库相关
  • 图形处理/多媒体
  • 网络通信/分布式开发
  • VCL组件开发及应用
  • Windows SDK/API
dejoy 2009年07月03日
请教使用FindFirst函数查找文件按掩码*.pas返回正确文件而不是类*.pas?掩码的xx.pas~
我要查找某个目录下的某类扩展名的文件,但使用FindFirst结果似乎有点扩大化了.比如我要查找*.pas类型文件文件,结果返回中包括了类似xx.pas~,xx.pas_这样的文件,我传入的掩码是*.pas,希望返回的正确结果是a.pas,b.pas,但不应包括c.pas~,d.pas_.但从返回值看似乎是应用了掩码*.pas*或*.pas?,结果不正确啊,请教应该如何返回对应的正确的掩码*.pas的文件.

示例代码:
procedure TForm1.btn1Click(Sender: TObject);
var
Search: TSearchRec;
Result: Integer;
dir, Mask: string;
s: string;
begin
dir := 'c:\y\';
Mask := '*.pas';
s := Dir + Trim(Mask);
Result := FindFirst(s, faAnyFile, Search);
try
while Result = 0 do
begin
if (Search.Attr and faDirectory) <> 0 then
Result := FindNext(Search)
else
begin
ShowMessage(Search.Name);
Result := FindNext(Search);
end;
end;
finally
FindClose(Search);
end;
end;
...全文
8 点赞 收藏 3
写回复
3 条回复

还没有回复,快来抢沙发~

发动态
发帖子
Delphi
创建于2007-08-02

1461

社区成员

26.2w+

社区内容

Delphi 开发及应用
社区公告
暂无公告