我在一个文件夹中有N个文件。有些信息会不时写入其中。对于如何将信息添加到它们中没有严格的逻辑。文件内容不相关。
如何获取每个文件的最后修改时间,比较并选择正确的文件?
答案 0 :(得分:5)
命名空间System.IO
具有可帮助您获取有关文件系统内容的信息的类。再加上一点LINQ,你可以很容易地做到你需要的东西:
// Get the full path of the most recently modified file
var mostRecentlyModified = Directory.GetFiles(@"c:\mydir", "*.log")
.Select(f => new FileInfo(f))
.OrderByDescending(fi => fi.LastWriteTime)
.First()
.FullName;
你需要在这里做一点小心(例如,如果由于在空集合上调用.First()
而在指定目录中没有匹配的文件,则会抛出),但这是一般的想法。< / p>
答案 1 :(得分:1)
var file = new DirectoryInfo(dirname)
.GetFiles()
.OrderByDescending(f => f.LastWriteTime)
.FirstOrDefault();
答案 2 :(得分:0)
试试这个
DirectoryInfo DR = new DirectoryInfo(@"Path to directory where files are stored");
FileInfo FR = DR.GetFiles();
foreach(FileInfo F in FR)
{
Console.WriteLine("Last Edit Time : {0}",F.LastWriteTime);
}
记得添加名称空间
using System.IO;