Question Best way for get last modified file in a folder

Andrea

New member
Joined
Aug 8, 2021
Messages
2
Programming Experience
1-3
Hello everyone, I'm new in this forum so if I'm wrong something please tell me. I'm trying to get the last modified file in a folder. I know is possible with GetLastWriteTime and DateTime.Compare(), but I'm searching for a more efficient way, if it is possible.

I hope someone can help me.
 
Solution
C#:
var folder = new DirectoryInfo("folder path here");
var files = folder.EnumerateFiles();
var lastModifiedFile = files.OrderBy(fi => fi.LastWriteTime).Last();
var filePath = lastModifiedFile.FullName;
or, if you want it all in one line of code:
C#:
var filePath = new DirectoryInfo("folder path here").EnumerateFiles()
                                                    .OrderBy(fi => fi.LastWriteTime)
                                                    .Last()
                                                    .FullName;
Note that OrderByDescending and First would have the same effect.
C#:
var folder = new DirectoryInfo("folder path here");
var files = folder.EnumerateFiles();
var lastModifiedFile = files.OrderBy(fi => fi.LastWriteTime).Last();
var filePath = lastModifiedFile.FullName;
or, if you want it all in one line of code:
C#:
var filePath = new DirectoryInfo("folder path here").EnumerateFiles()
                                                    .OrderBy(fi => fi.LastWriteTime)
                                                    .Last()
                                                    .FullName;
Note that OrderByDescending and First would have the same effect.
 
Solution
C#:
var folder = new DirectoryInfo("folder path here");
var files = folder.EnumerateFiles();
var lastModifiedFile = files.OrderBy(fi => fi.LastWriteTime).Last();
var filePath = lastModifiedFile.FullName;
or, if you want it all in one line of code:
C#:
var filePath = new DirectoryInfo("folder path here").EnumerateFiles()
                                                    .OrderBy(fi => fi.LastWriteTime)
                                                    .Last()
                                                    .FullName;
Note that OrderByDescending and First would have the same effect.
Thank you, it works
 
Back
Top Bottom