C# 输出文件夹下的所有文件

问题:如何输出给定文件夹目录下面的所有文件的名称?

C#代码:

using System;
using System.IO; namespace MyTest
{
public class Program
{
public static void Main(string[] args)
{
// 假设是输出 f:\temp 文件下的所有文件的名称
args = new string[] { "f:\\temp" };
foreach (string path in args)
{
if (File.Exists(path))
{
// path 是某个文件的路径
ProcessFile(path);
}
else if (Directory.Exists(path))
{
// path 是某个文件夹的路径
ProcessDirectory(path);
}
else
{
Console.WriteLine("{0} 不是一个有效的文件或文件夹路径。", path);
}
}
System.Console.ReadLine();
} // 根据传入的文件夹路径,递归查出它包含的所有文件和文件夹,并处理各个文件夹下包含的文件
public static void ProcessDirectory(string targetDirectory)
{
// 处理 targetDirectory 路径下的文件列表
string[] fileEntries = Directory.GetFiles(targetDirectory);
foreach (string fileName in fileEntries)
{
ProcessFile(fileName);
} // 递归到 targetDirectory 路径下的子路径中
string[] subdirectoryEntries = Directory.GetDirectories(targetDirectory);
foreach (string subdirectory in subdirectoryEntries)
{
ProcessDirectory(subdirectory);
}
} // 这里添加如何处理找到的文件的逻辑
public static void ProcessFile(string path)
{
Console.WriteLine("已处理文件:'{0}'", path);
}
}
}

输出结果:

已处理文件:'f:\temp\test.txt'

已处理文件:'f:\temp\MyTest.sln'

已处理文件:'f:\temp\MyTest\App.config'

......

原文地址:https://msdn.microsoft.com/zh-cn/library/07wt70x2(v=vs.110).aspx

https://msdn.microsoft.com/zh-cn/library/4cyf24ss(v=vs.110).aspx

上一篇:java:多层文件夹情况下,判断文件夹下是否有文件夹,并获取到没有文件夹的名字的方法


下一篇:C#实现把指定文件夹下的所有文件复制到指定路径下以及修改指定文件的后缀名