winforms 如何获得第一个创建的文件夹,而不是最后一个?

fnvucqvd  于 2022-12-27  发布在  其他
关注(0)|答案(4)|浏览(140)
var lastWrittenFolder = new DirectoryInfo(textBoxPath.Text).GetDirectories()
                       .OrderByDescending(d => d.LastWriteTimeUtc).First();

这对于获取最新创建的文件夹是工作良好的。
但是我如何得到第一个创建的文件夹?

x7rlezfr

x7rlezfr1#

更改OrderBy函数和keySelector参数:

var lastWrittenFolder = new DirectoryInfo(textBoxPath.Text).GetDirectories()
                   .OrderBy(d => d.CreationTimeUtc).First();
tnkciper

tnkciper2#

您也可以使用Min,因此您需要创建日期最短的记录。

var firstCreatedFolder = new DirectoryInfo(textBoxPath.Text).GetDirectories()
                       .Min(d => d.CreationTimeUtc);
s1ag04yj

s1ag04yj3#

以下代码将帮助您。

static void Main()
{
    var folderPath = "your-folder-path";

    var directories = new DirectoryInfo(folderPath).GetDirectories();

    foreach (var item in directories.OrderBy(m => m.LastWriteTime))
    {
        Console.WriteLine(item.LastWriteTime + " " + item.Name);
    }

    Console.ReadLine();
}
pqwbnv8z

pqwbnv8z4#

你已经在那里了。只是不要按相反的顺序(从下到上)对文件夹进行排序,而是从上到下对它们进行排序,然后像你一样选择第一个。
下面是正确的代码:

var lastWrittenFolder = new DirectoryInfo(path).GetDirectories().OrderBy(d => d.LastWriteTimeUtc).First();

相关问题