遍历指定目录下指定类型文件的函数(fatkun Fix版)

// ================================================================
// 遍历某个文件夹及子文件夹下某种文件,
// 使用说明
// _GetFileList(ListBox1.Items, ‘c:\‘, ‘.doc‘);
// _GetFileList(MyTStringList, ‘c:\‘, ‘.exe‘);
// 这不是万一博客的原版咧,是1L的fatkun修复的一版,且不管看不看得懂,收藏个先
// ================================================================
procedure _GetFileList(AStrings: TStrings; ASourFile,FileName: string);
var sour_path,sour_file: string;
TmpList:TStringList;
FileRec, subFileRec:TSearchrec;
i: Integer;
begin
if copy(ASourFile,length(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 begin
if (Pos(sour_file,sour_path+FileRec.Name)>0) then
TmpList.Add(sour_path+FileRec.Name);
end;

until FindNext(FileRec)<>0;

FindClose(FileRec);
for i := 0 to TmpList.Count -1 do
AStrings.Add(TmpList.Strings[i]);

TmpList.Free;
end;

时间: 2024-10-11 23:36:10

遍历指定目录下指定类型文件的函数(fatkun Fix版)的相关文章

读取指定目录下的所有文件(windows 和 linux 版)

笔者这里用到了OpenCV,如果不需要用OpenCV代码的话,可以将这部分代码去掉即可. windows  vs2015环境代码如下: #include <io.h> // 结构体struct _finddata_t需要用到 #include <opencv2/opencv.hpp> using namespace cv; using namespace std; char * fileLoadPath = "E:\\ubshare\\Cars\\102051724100

c# 获取指定目录下的所有文件并显示在网页上

参考文献: FileInfo 的使用  https://msdn.microsoft.com/zh-cn/library/system.io.fileinfo_methods(v=vs.110).aspx 网页表格的生成  http://www.w3school.com.cn/html/html_tables.asp C# 通过文件扩展名获取图标和描述 http://www.csframework.com/archive/2/arc-2-20110514-1478.htm   http://ww

Windows Phone获得IsolatedStorage中指定目录下的所有文件

在Windows Phone 中对隔离存储空间中的文件操作需要通过System.Io.IsolatedStorage下的类进行操作 获得指定文件夹下的所有文件: 参数:是指定文件夹的路径加上通配符,格式:\folder1\* List<string> GetFileNames(string _strFolder) { List<string> returnlst = new List<string>(); using (IsolatedStorageFile stora

linux复制指定目录下的全部文件到另一个目录中

linux复制指定目录下的全部文件到另一个目录中复制指定目录下的全部文件到另一个目录中文件及目录的复制是经常要用到的.linux下进行复制的命令为cp.假设复制源目录 为 dir1 ,目标目录为dir2.怎样才能将dir1下所有文件复制到dir2下了如果dir2目录不存在,则可以直接使用cp -r dir1 dir2即可.如果dir2目录已存在,则需要使用cp -r dir1/. dir2如果这时使用cp -r dir1 dir2,则也会将dir1目录复制到dir2中,明显不符合要求.ps:di

C#直接删除指定目录下的所有文件及文件夹(保留目录)

? ????#region 直接删除指定目录下的所有文件及文件夹(保留目录) /// <summary> /// 直接删除指定目录下的所有文件及文件夹(保留目录) /// </summary> /// <param name="strPath">文件夹路径</param> /// <returns>执行结果</returns> public bool DeleteDir(string strPath) { try

linux复制指定目录下的全部文件到另一个目录

linux复制指定目录下的全部文件到另一个目录中复制指定目录下的全部文件到另一个目录中文件及目录的复制是经常要用到的.linux下进行复制的命令为cp.假设复制源目录 为 dir1 ,目标目录为dir2.怎样才能将dir1下所有文件复制到dir2下了如果dir2目录不存在,则可以直接使用cp -r dir1 dir2即可.如果dir2目录已存在,则需要使用cp -r dir1/. dir2如果这时使用cp -r dir1 dir2,则也会将dir1目录复制到dir2中,明显不符合要求.ps:di

SHELL编程练习-获得指定目录下的所有文件及文件夹的大小

一.目的编写一个脚本,可以获得指定目录下的所有文件及文件夹的大小.输出的样式与 ls -lh 命令相同.命令执行示例,其中和 ls -lh 命令输出的唯一区别是目录的大小:1.1.ls -lh命令的输出(注意目录大小) [[email protected] ~]# ls -lh /root/dir1/ total 24M drwxr-xr-x 3 root root 4.0K Feb 6 13:54 dir2 drwxr-xr-x 2 root root 4.0K Feb 6 13:55 dir

python之查询指定目录下的最新文件

使用os模块查询指定目录下的最新文件 1 import os 2 3 # 输入目录路径,输出最新文件完整路径 4 def find_new_file(dir): 5 '''查找目录下最新的文件''' 6 file_lists = os.listdir(dir) 7 file_lists.sort(key=lambda fn: os.path.getmtime(dir + "\\" + fn) 8 if not os.path.isdir(dir + "\\" + f

javaFile循环列出指定目录下的所有文件(源代码)

package javatest.basic22; import java.io.File; import java.io.IOException; public class FileTest { public void getFileName(File file){ //判断是否是文件 if(file.isFile()){ System.out.println(file.getPath()+file.getName()); }else{ //如果是目录,列出当前目录下所有目录 File[] f