在C#中,你可以使用Directory.GetFiles
方法结合Path.GetExtension
方法来过滤特定类型的文件。以下是一个示例代码,展示了如何获取指定目录下所有特定类型的文件(例如,只获取扩展名为.txt
的文件):
using System;
using System.IO;
class Program
{
static void Main()
{
// 指定要搜索的目录
string directoryPath = @"C:\example_directory\";
// 指定要过滤的文件类型(扩展名)
string fileExtension = ".txt";
try
{
// 获取目录下所有指定扩展名的文件
string[] files = Directory.GetFiles(directoryPath, fileExtension);
// 输出结果
Console.WriteLine($"在目录 {directoryPath} 下找到以下 {fileExtension} 文件:");
foreach (string file in files)
{
Console.WriteLine(file);
}
}
catch (Exception ex)
{
// 处理异常(例如,目录不存在)
Console.WriteLine($"发生错误:{ex.Message}");
}
}
}
在这个示例中,Directory.GetFiles
方法用于获取目录下所有文件,然后通过Path.GetExtension
方法检查每个文件的扩展名是否与指定的fileExtension
匹配。如果匹配,则该文件会被包含在结果数组中。
注意:Directory.GetFiles
方法还可以接受一个额外的参数,用于搜索子目录中的文件。如果你想要递归地搜索整个目录树,可以将第二个参数设置为true
。例如:
string[] files = Directory.GetFiles(directoryPath, fileExtension, SearchOption.AllDirectories);