如何取得一个目录下的所有文件名称?(100分)

  • 主题发起人 主题发起人 liounzhou
  • 开始时间 开始时间
L

liounzhou

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟是个新手,请问有什么办法可以在选择一个文件夹后,取得它下面所有的文件名称?
 
1、用FindFirst+*.*+FindNext。
2、用Winexec('Dir > File.Txt',...),然后打开File.Txt文件。
 


on error resume next
Set fs=CreateObject("Scripting.FileSystemObject")
Dim f
set f=fs.OpenTextFile(FileName,1,true)
<% for each a in fs.GetFolder(AllPath).Files
if Trim(Unit)="" then
exit for
end if
%>
<tr>
<td width="4%" height="30" bgcolor="#EFEFEF"><img src="icon.gif" width="23" height="20">
</td>
<td width="50%" bgcolor="#EFEFEF" height="30">
<a href="<%=("./"&Unit&Path&"/"&a.Name)%>"><%=a.Name%></a> </td>
</tr>

<%next%>
 
使用FindFirst和FindNext函数.你可以看看运行库函数的帮助有例子.很简单的.
 
窗体name为main,上面放一个memo,Apath为目录路径,例如:'c:/
procedure TMain.SetListview(apath:string);
var
FSearchRec,DSearchRec:TSearchRec;
FindResult:integer;
f:file of byte;
Newitem:TListItem;
begin
findresult:=findfirst(Apath+'*.*',faanyfile,fsearchrec);
memo1.Items.Clear;
try
while findresult=0 do
begin
memo1.lines.add(fsearchrec.Name);
assignfile(f,Apath+fsearchrec.Name);
Reset(f);
closefile(f);
findresult:=findnext(fsearchrec)
end;
findresult:=findfirst(apath+'*.*',fadirectory,dsearchrec);
while findresult=0 do
findresult:=findnext(dsearchrec);
finally
findclose(fsearchrec);
end;
end;
 
:)
谢谢各位!
 
后退
顶部