delphi 得到指定目录内所有.txt文件的文件名,并赋值给一个combobox的item

已知目录D:\document\目录下存放有大量.txt文件,现在想取得该目录内所有.txt文件的文件名,例如doc001.txt、doc002.txt、doc003.txt... ...,即取得doc001,doc002,doc003... ...,并一一赋值给一个combobox的item,请问如何编写?
补充一下二楼,全局变量的定义,从百度空间找的
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
ListBox1: TListBox;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
found:integer;
dirstr:string;
keyword:string;
rc:TSearchRec;
procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
begin

... ...

procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
begin
dirstr:='D:\document\'; //任意目录
keyword:='*.Txt'; //关键字
s:=dirstr+Trim(keyword);
found:=findfirst(s,faAnyFile,rc);
while found=0 do
begin
if (rc.Attr and faDirectory) <> 0 then // 判断是目录跳过
found:=FindNext(rc)
else
begin
Combobox1.Items.Add(ExtractFileName(rc.Name)); //do samething...
found:=FindNext(rc);
end

end;
end;
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-06-26
var
i : integer;
begin
Filelistbox1.Directory := '你要的目录';
filelistbox1.Mask := '*.txt';
filelistbox1.Refresh;
ComboBox1.Clear;
for i := 0 for filelistbox1.Count - 1 do
begin
ComboBox1.Items.Add(filelistbox1.Items.Strings[i]);
end;
end;
第2个回答  2012-06-26
先给你讲讲思路 如果需要代码再帮你写
思路就是用一个搜索文件的函数去搜索你的目录。
再这个函数里面搜索到所有文件判断是否是文本文件txt,
如果是就用函数提取出文件名添加到combobox的item
不明白再问
第3个回答  2012-06-25
搜索 delphi 文件 遍历
相似回答