按C#中修改的日期循环文件

本文关键字:日期 循环 文件 修改 | 更新日期: 2023-09-27 18:22:23

用户正在选择多个文件

  OpenFileDialog openFileDialog1 = new OpenFileDialog();
  openFileDialog1.Multiselect = true;
  DialogResult result = openFileDialog1.ShowDialog(); // Show the dialog.
  int id = RadarGraphInsertDLL.SalesDWH.Return_Last_QuickLabDumpID();
  if (result == DialogResult.OK) // Test result.
  {
      foreach (string file in openFileDialog1.FileNames)
      {
         /////

我希望foreach按照修改日期的顺序处理文件

如何按修改日期获取文件?

按C#中修改的日期循环文件

尝试使用此命令来排序文件列表:

openFileDialog1.FileNames.OrderBy(p => System.IO.File.GetLastWriteTime(p))

EDIT-订购说明

在这种情况下,.OrderBy将首先根据最旧的修改文件对文件名进行排序。要先根据最近修改的文件排序,请改用.OrderByDescending

编辑:对不起,我误解了这个问题。

FileInfo类提供了获取修改日期所必需的属性
对于分拣部分,您可以使用LINQ OrderBy(),例如:

var sortedFiles = 
openFileDialog1.FileNames.OrderBy(x => new FileInfo(x).LastWriteTime);
foreach(var file in sortedFiles)
{
   // ...
}