如何获取最后一个文件夹的名称。 我尝试这样的事情:
var directories = Directory.GetDirectories("D:\\" + new DateTime(2016, 11, 2).ToString("d-MM-yyyy"))
.ToList()
.ForEach(a => a.Split('/')[1]);
答案 0 :(得分:3)
使用.Last
:
var fullName = Directory.GetDirectories("C:\\").Last();
var folderName = fullName.Substring(fullName.LastIndexOf('\\')+1);
或OrderByDescending
:
var fullName = Directory.GetDirectories("C:\\")
.OrderByDescending(directory => /* some predicate */)
.FirstOrDefault();
if(fullName != null)
var folderName = fullName.Substring(fullName.LastIndexOf('\\')+1);
对于.Last
,您也可以提供谓词
将其放入您的代码中,使用.Select
代替ForEach
并链接下一个函数:
var lastDirectory = Directory
.GetDirectories("D:\\" + new DateTime(2016, 11, 2).ToString("d-MM-yyyy"))
.Select(directory => directory.Substring(directory.LastIndexOf('\\')+1))
.Last();
要搜索所有嵌套目录,请使用GetDirectories
的不同重载来指定SearchOptions
:
Directory.GetDirectories("path", "pattern", SearchOption.AllDirectories)