C# 遍历文件夹下所有子文件夹中的文件,得到文件名

C# 遍历文件夹下所有子文件夹中的文件,得到文件名,第1张

输入某文件夹路径,遍历文件夹及其子文件夹(包括子文件夹的子文件夹等),获取其中所有文件的函数:

/// <summary>

/// 查找指定文件夹下指定后缀名的文件

/// </summary>

/// <param name="directory">文件夹</param>

/// <param name="pattern">后缀名</param>

/// <returns>文件路径</returns>

public void GetFiles(DirectoryInfo directory, string pattern, ref List<string> fileList)

{

if (directoryExists || patternTrim() != stringEmpty)

{

try

{

foreach (FileInfo info in directoryGetFiles(pattern))

{

fileListAdd(infoFullNameToString());

}

}

catch (SystemException ex)

{

ConsoleWriteLine(exToString());

}

foreach (DirectoryInfo info in directoryGetDirectories())//获取文件夹下的子文件夹

{

GetFiles(info, pattern, ref fileList);//递归调用该函数,获取子文件夹下的文件

}

}

}

使用实例:

List<string> FindResult = new List<string>();

GetFiles(new DirectoryInfo(@"C:\","", ref FindResult); //获取C盘下的所有文件路径

GetFiles(new DirectoryInfo(@"\\1921681107\Save"), "", ref FindResult);//获取局域网上共享文件夹下的所有文件

引用

using SystemIO;

方法

void GetAllFiles(string dir,List<string> allFiles)

{

DirectoryInfo di = new DirectoryInfo(dir);

if (!diExists) return;//如果目录不存在,退出

var currentDirFiles = diGetFiles()Select(p => pName);//获取当前目录所有文件

allFilesAddRange(currentDirFiles);//将当前目录文件放到allFiles中

var currentDirSubDirs = diGetDirectories()ToList();//获取子目录

currentDirSubDirsForEach(p => GetAllFiles(pFullName, allFiles));//将子目录中的文件放入allFiles中

}

用法

List<string> a = new List<string>();

GetAllFiles(@"d:\files\", a);

a里面的就是所有文件

用DOS命令:

(假设你的这个文件夹是c:\pdf)

dir

c:\pdf\pdf

>

c:\pdf\listtxt

运行完之后到目录下去找一个文件名是listtxt的,打开就是文件名了

我也有同样的问题。

到网上查,感觉实现较复杂。

最后用的是c语言调用cmd

生成文件列表文件,再用c语言去读取那个文件。进行字符串处理。

c语言调用cmd 为 system(“cmd命令”);

比如:

#include <stdioh>

#include <dosh>

int main()

{

system("dir /s /b > filelisttxt");/这是全部文件,包括子目录/

system("dir txt /b > filelist2txt"); /当前目录下的所有txt文件,不包括子目录/

/然后/

sleep(100);

FILE ptrin = fopen("filelist","r");/读取并进行处理/

/处理/

/关闭文件flose(ptrin);/

return 0;

}

希望有谁有更好的办法。

以上就是关于C# 遍历文件夹下所有子文件夹中的文件,得到文件名全部的内容,包括:C# 遍历文件夹下所有子文件夹中的文件,得到文件名、C#如何遍历一个文件夹下面所有的文件、如何获取某文件夹中所有子文件夹的文件名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9496847.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存