我试图从父导演中找到最新的子目录。
public static DirectoryInfo GetLatestSubDirectory(string parentDirPath)
截至目前,该实现使用冒泡排序算法通过比较创建时间来查找最新信息。
if (subDirInfo.CreationTimeUtc > latestSubDirInfo.CreationTimeUtc)
我想知道是否有更有效的方法来做到这一点? LINQ ??
答案 0 :(得分:1)
return new DirectoryInfo(parentDirPath)
.GetDirectories()
.OrderByDescending(d => d.CreationTimeUtc)
.First()
答案 1 :(得分:0)
最近我猜你的意思是最新的。我想知道为什么从集合中选择最小/最大项目时,人们倾向于使用排序或LINQ。
DirectoryInfo newest = null;
foreach(string subdirName in Directory.GetDirectory(path))
{
DirectoryInfo subdirInfo = new DirectoryInfo(subdirName);
if (newest == null || subdirInfo.CreationTimeUct > newest.CreationTimeUct)
newest = subdirInfo;
}