c遍历一个文件夹下及所有文件包括子文件夹
c#遍历一个文件夹下的所有文件包括子文件夹
using System; using System.IO;
class ListAllFilesDemo { public static void Main() { Console.Write( "请输入要查询的目录: "); string dir = Console.ReadLine(); try { ListFiles(new DirectoryInfo(dir)); } catch(IOException e) { Console.WriteLine(e.Message); } }
public static void ListFiles(FileSystemInfo info) { if (!info.Exists)
return;
else
{
DirectoryInfo dirInfo = info as DirectoryInfo;
if (dirInfo != null)
{
foreach (var file in dirInfo.GetFileSystemInfos())
{
FileInfo fileInfo = file as FileInfo;
if (fileInfo != null)
Console.WriteLine(fileInfo.FullName);
else
{
listFiles(file as DirectoryInfo);
}
}
}
}
} }
C#中遍历目录下的目录的文件(二)
1、遍历一个目录下的全部目录,要用到System.IO.DirectoryInfo 类的GetDirectories方法:
DirectoryInfo dir = new DirectoryInfo(@"c:\"); foreach(DirectoryInfo dChild in dir.GetDirectories("*")) {//如果用GetDirectories("ab*"),那么全部以ab开头的目录会被显示 Response.Write(dChild.Name + "
");//打印目录名 Response.Write(dChild.FullName + "
");//打印路径和目录名 }
2、遍历一个目录下的全部文件,要用到System.IO.DirectoryInfo 类的GetFiles方法: DirectoryInfo dir = new DirectoryInfo(@"c:\"); foreach(DirectoryInfo dChild in dir.GetFiles("*")) {//如果用GetFiles("*.txt"),那么全部txt文件会被显示 Response.Write(dChild.Name + "
");//打印文件名 Response.Write(dChild.FullName + "
");//打印路径和文件名 }
如何获取指定目录包含的文件和子目录
1. DirectoryInfo.GetFiles():获取目录中(不包含子目录)的文件,返回类型为FileInfo[],支持通配符查找; 2. DirectoryInfo.GetDirectories():获取目录(不包含子目录)的子目录,返回类型为DirectoryInfo[],支持通配符查找; 3. DirectoryInfo. GetFileSystemInfos():获取指定目录下(不包含子目录)