我有一个包含许多文件的文件夹.有没有简单的方法来获取目录中的文件名按创建日期/时间排序?
如果我使用Directory.GetFiles(),它将返回按文件名排序的文件.
Geo*_*kos 177
这可能对你有用.
using System.Linq;
DirectoryInfo info = new DirectoryInfo("PATH_TO_DIRECTORY_HERE");
FileInfo[] files = info.GetFiles().OrderBy(p => p.CreationTime).ToArray();
foreach (FileInfo file in files)
{
// DO Something...
}
Run Code Online (Sandbox Code Playgroud)
Sev*_*Sev 42
你可以使用Linq
var files = Directory.GetFiles(@"C:\", "*").OrderByDescending(d => new FileInfo(d).CreationTime);
Run Code Online (Sandbox Code Playgroud)
小智 8
如果您不想使用LINQ
// Get the files
DirectoryInfo info = new DirectoryInfo("path/to/files"));
FileInfo[] files = info.GetFiles();
// Sort by creation-time descending
Array.Sort(files, delegate(FileInfo f1, FileInfo f2)
{
return f2.CreationTime.CompareTo(f1.CreationTime);
});
Run Code Online (Sandbox Code Playgroud)
这将返回上次修改日期及其年龄。
DateTime.Now.Subtract(System.IO.File.GetLastWriteTime(FilePathwithName).Date)
Run Code Online (Sandbox Code Playgroud)