delphi里怎么把指定文件夹内的所有文件名输出出来

代码怎么写,最好窗体也附上... 代码怎么写,最好窗体也附上 展开
 我来答
就烦条0o
推荐于2018-03-13 · 知道合伙人软件行家
就烦条0o
知道合伙人软件行家
采纳数:33315 获赞数:46491
从事多年系统运维,喜欢编写各种小程序和脚本。

向TA提问 私信TA
展开全部

1、使用FindFirst函数和FindNext函数就可以查找出文件夹内所有的文件名,编写如下一个函数:

function searchfile(path:string):TStringList;
var SearchRec:TSearchRec;
    found:integer;
    list:TStringList;
begin
  list:=TStringList.Create;
  found:=FindFirst(path+'\*.*',faAnyFile,SearchRec);
  while  found=0 do
  begin
    if (SearchRec.Name<>'.')  and (SearchRec.Name<>'..') and (SearchRec.Attr<>faDirectory)
      then List.Add(SearchRec.Name);
    found:=FindNext(SearchRec);
  end;
  FindClose(SearchRec);
  searchfile:=list;
end;

2、使用searchfile(要查找的路径),就可以得到所有文件名,如下示例:

procedure TForm1.btn1Click(Sender: TObject);
begin
  mmo1.Lines.AddStrings(searchfile('G:\BaiDu\baidu_code\bigimg'));
end;

效果如下:

猫猫咪呐
推荐于2017-11-27 · TA获得超过1745个赞
知道大有可为答主
回答量:3519
采纳率:53%
帮助的人:649万
展开全部
DELPHI 2010 中搜索文件的方法
uses
IOUtils, Types;

procedure TForm1.Button3Click(Sender: TObject);
var
files: TStringDynArray;
str: string;
begin
files := TDirectory.GetFiles('C:\WINDOWS\你自己改这里的路径', '*.txt', TSearchOption.soAllDirectories); //TSearchOption.soAllDirectories 所有文件和文件夹
//files := TDirectory.GetFiles(C:\WINDOWS\你自己改这里的路径‘, '*.exe', TSearchOption.soTopDirectoryOnly); //仅目录第一层 *.exe 可以改成你的文件后缀,可以*.*
Memo1.Clear;
for str in files do
Memo1.Lines.Add(str);
end;

新版本用上边的代码很方便,要是D7你百度一下 有现成的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式