delphi如何得到指定文件夹的所有子文件

我想用delphi得到指定文件夹的所有子文件(exe可执行文件,不包括子文件夹的),将它储存在tstringlist中,希望代码简洁点,谢谢!!... 我想用delphi得到指定文件夹的所有子文件(exe可执行文件,不包括子文件夹的),将它储存在tstringlist中,希望代码简洁点,谢谢!! 展开
 我来答
cb120520025
推荐于2016-11-24 · TA获得超过347个赞
知道小有建树答主
回答量:323
采纳率:0%
帮助的人:571万
展开全部
function FindFile(Path,Ext :string;var sl :TStringList):Boolean;
const
DIRATTR = DDL_READWRITE or DDL_READONLY or DDL_HIDDEN or DDL_ARCHIVE;
var
Files :string;
lb :TListBox;
begin
Result := False;
lb := TListBox.Create(Form1);
try
if Path[Length(Path)] <>野型 '\' then
Path := Path + '\';
if DirectoryExists(Path) then
begin
lb.Visible := false;
lb.Parent := Form1;
Files := Ext;
SetCurrentDirectory(PChar(Path));
SendMessage(lb.Handle, LB_DIR, DIRATTR, LParam(Files));
sl.AddStrings(lb.Items);
Result := True;
end;
except
end;
FreeAndNil(lb);
end;

调用颂缓猜:

var
sl :TStringList;
begin
sl := TStringList.Create;
try
if FindFile('C:\','哪埋*.*',sl) then
ShowMessage(sl.Text);
finally
FreeAndNil(sl);
end;
end;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
褚瑾刀荫
2019-01-28 · TA获得超过3976个赞
知道大有可为答主
回答量:3175
采纳率:34%
帮助的人:188万
展开全部
/猜巧历宽做/
遍历文件和文件夹可以使用FindFirst、FindNext和FindClose
procedure
GetFile(sl:
TStringList;
path:
string);
var

h:
THandle;

sr:
TSearchRec;
begin

sl.Clear;

h
:=
FindFirst(path
+
'\*.exe',
faAnyFIle,
sr);

while
h
=
0
do

begin

if
(sr.Name<>'.')
and
(sr.Name<>'穗搜..')
and
(ExtractFileExt(sr.Name)='.exe')
then

sl.Add(sr.Name);

h
:=
FindNext(sr);

end;

FindClose(sr);
end;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式