如何实现浏览系统所有目录及文件的功能(100分)

  • 主题发起人 主题发起人 bengbeng1
  • 开始时间 开始时间
B

bengbeng1

Unregistered / Unconfirmed
GUEST, unregistred user!
菜鸟有急事相求, 如下:
我在编写一个数据库系统时, 因程序中要打开一个excel文件, 且这个文件可能不是在
当前驱动器上, 所以想在程序中实现浏览系统所有目录及文件的功能.
还望各位专家多多指教,在这儿先谢各位了.[?]
 
procedure FindFile(AFileName:String;ADir:String;AResults:TStrings);
var //递归查找文件,并将找到的文件放到一个strings里
sr: TSearchRec;
FileAttrs: Integer;
begin
FileAttrs:=faDirectory;
if FileExists(ADir+AFileName) then AResults.Add(ADir+AFileName);
if FindFirst(ADir+'*.*', FileAttrs, sr) = 0 then
begin
repeat
if ((sr.Attr and FileAttrs)=FileAttrs)and(sr.Name<>'.')and(sr.Name<>'..') then
begin
//Application.ProcessMessages; //如果需要非诸塞方式,可以在此处控制
FindFile(AFileName,ADir+sr.Name+'/',AResults);
end;
until FindNext(sr) <> 0;
FindClose(sr);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
FindFile('autoexec.bat','c:/',ListBox1.items);//查找文件例子,第二个参数是目录,记住最后一定要有'/',比如'c:/temp/','d:/test/test1/'
end;
 
简单一点 就用一个 file explore的控件, 类似资源管理器的界面,很漂亮

自己就用tdirectorylistbox tfilelistbox 联系一下就可以了,都不用编程
 
后退
顶部