在C#中,遍历文件通常使用System.IO
命名空间中的Directory
和File
类。以下是一个简单的案例,展示了如何遍历一个文件夹及其子文件夹中的所有文件,并打印出它们的名称:
using System;
using System.IO;
class Program
{
static void Main()
{
// 指定要遍历的文件夹路径
string folderPath = @"C:\example_folder";
// 调用遍历文件夹的方法
TraverseDirectory(folderPath);
}
static void TraverseDirectory(string path)
{
// 获取当前路径下的所有文件和子文件夹
DirectoryInfo directoryInfo = new DirectoryInfo(path);
DirectoryInfo[] directories = directoryInfo.GetDirectories();
FileInfo[] files = directoryInfo.GetFiles();
// 遍历所有文件
Console.WriteLine("Files:");
foreach (FileInfo file in files)
{
Console.WriteLine(file.Name);
}
// 遍历所有子文件夹
Console.WriteLine("\nSubfolders:");
foreach (DirectoryInfo subfolder in directories)
{
TraverseDirectory(subfolder.FullName);
}
}
}
这个案例中,TraverseDirectory
方法接收一个文件夹路径作为参数,然后使用DirectoryInfo
类获取该路径下的所有文件和子文件夹。接着,使用foreach
循环遍历所有文件并打印它们的名称,再递归地遍历所有子文件夹。