我需要从文件夹中获取第一个文件名。我怎样才能在 C# 中获得它?
下面的代码返回所有的文件名:
DirectoryInfo di = new DirectoryInfo(imgfolderPath);
foreach (FileInfo fi in di.GetFiles())
{
if (fi.Name != "." && fi.Name != ".." && fi.Name != "Thumbs.db")
{
string fileName = fi.Name;
string fullFileName = fileName.Substring(0, fileName.Length - 4);
MessageBox.Show(fullFileName);
}
}
我需要第一个文件名。
最佳答案
有几种方法可以做到这一点:
您可以在处理第一个文件后添加一个
break
语句。这将退出 foreach 循环。DirectoryInfo.GetFiles
返回一个数组,因此您可以将其分配给一个变量并扫描元素,直到找到合适的元素。或者,如果您使用的是 .NET 3.5,您可以查看
FirstOrDefault
带有谓词的方法。
这是一些代码:
string firstFileName =
di.GetFiles()
.Select(fi => fi.Name)
.FirstOrDefault(name => name != "Thumbs.db");
关于c# - 如何从C#中的文件夹中获取第一个文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2912425/