两个delphi下遍历指定目录下指定类型文件的函数
来源:互联网 发布:linux 查看 mbr 编辑:程序博客网 时间:2024/06/06 03:16
// ================================================================
// 遍历某个文件夹下某种文件,
// 使用说明
// _GetFileList(ListBox1.Items,'c:/*.doc');
// _GetFileList(MyTStringList,'c:/*.exe');
// ================================================================
procedure TForm1._GetFileList(AStrings: TStrings ; ASourFile: string);
var sour_path,sour_file: string;
TmpList:TStringList;
FileRec:TSearchrec;
begin
sour_path:=ExtractFilePath(ASourFile);
sour_file:=ExtractFileName(ASourFile);
if not DirectoryExists(sour_path) then
begin
AStrings.Clear;
exit;
end;
TmpList:=TStringList.Create;
TmpList.Clear;
if FindFirst(sour_path+sour_file,faAnyfile,FileRec) = 0 then
repeat
if ((FileRec.Attr and faDirectory) = 0) then
begin
TmpList.Add(sour_path+FileRec.Name)
end;
until FindNext(FileRec)<>0;
SysUtils.FindClose(FileRec);
AStrings.Assign(TmpList);
TmpList.Free;
end;
// ================================================================
// 遍历某个文件夹及子文件夹下某种文件,
// 使用说明
// _GetFileList(ListBox1.Items, 'c:/', '*.doc');
// _GetFileList(MyTStringList, 'c:/', '*.exe');
// ================================================================
procedure _GetFileList(AStrings: TStrings; ASourFile,
FileName: string);
var sour_path,sour_file: string;
TmpList:TStringList;
FileRec, subFileRec:TSearchrec;
i: Integer;
begin
if rightStr(trim(ASourFile), 1) <> '/' then
sour_path :=trim(ASourFile) + '/'
else
sour_path :=trim(ASourFile);
sour_file:= FileName;
if not DirectoryExists(sour_path) then
begin
AStrings.Clear;
exit;
end;
TmpList:=TStringList.Create;
TmpList.Clear;
if FindFirst(sour_path+'*.*',faAnyfile,FileRec) = 0 then
repeat
if ((FileRec.Attr and faDirectory) <> 0) then
begin
if ((FileRec.Name<> '.') and (FileRec.Name <> '..')) then
_GetFileList(AStrings, sour_path+ FileRec.Name + '/', sour_file);
end
else
if FindFirst(sour_path + FileName,faAnyfile,subFileRec) = 0 then
repeat
if ((subFileRec.Attr and faDirectory) = 0) then
TmpList.Add(sour_path+subFileRec.Name);
until FindNext(subFileRec)<>0;
until FindNext(FileRec)<>0;
SysUtils.FindClose(FileRec);
for i := 0 to TmpList.Count -1 do
AStrings.Add(TmpList.Strings[i]);
TmpList.Free;
end;
- 两个delphi下遍历指定目录下指定类型文件的函数
- 两个delphi下遍历指定目录下指定类型文件的函数
- 两个delphi下遍历指定目录下指定类型文件的函数
- delphi遍历指定目录下指定类型文件的函数
- 遍历指定目录下指定类型文件的函数
- 遍历指定目录下指定类型文件的方法集锦
- 转载遍历指定目录下所有指定类型的文件
- MFC 遍历目录下指定类型的文件并复制
- 遍历目录下的指定扩展名文件的函数
- VC 遍历指定目录下的文件
- 遍历指定目录下的所有文件
- Delphi 计算指定目录下所有文件的大小(遍历文件夹所有文件及目录)
- 遍历指定目录下指定格式的文件
- 使用QDir遍历指定目录下的指定文件
- 遍历读取指定文件夹下指定类型的所有文件
- 遍历读取指定文件夹下指定类型的所有文件
- 获取指定目录下的指定类型的文件
- 删除指定目录下指定类型的文件
- error LNK1103 问题
- 9i下创建standby database 步骤
- 安装FreeBSD出错之后,Windows2003找不到磁盘分区的处理
- 自我介绍---太高兴了~终于有了自己的BLOG页面
- 请各位高手看一下.这是一个关于定义冲突的问题.我应该怎么解决.急,忘各位高手指点!
- 两个delphi下遍历指定目录下指定类型文件的函数
- Java写的DES加密程序
- 让MXTW 3.0在asp.net里面工作
- For the first time!
- [乱七八糟][经典收藏]全套人民幣共81張
- 041108生日。
- 一个新的起点
- 早上
- Tomcat配置技巧Top 10(转载)