我当前正在将不同目录中的文件列表读入列表中:
public List<string> MapMyFiles()
{
List<string> batchaddresses = new List<string>();
foreach (object o in lstViewAddresses.Items)
{
try
{
batchaddresses.AddRange(Directory.GetFiles(o.ToString(), "*-E.esy"));
}
catch
{
if (MessageBox.Show(o.ToString() + " does not exist. Process anyway?", "Continue?", MessageBoxButtons.YesNo)
== DialogResult.Yes) { }
else
{
Application.Exit();
}
}
}
我如何在列表中按创建日期对它们进行排序?
最佳答案
尝试使用 FileInfo
对象并按 CreationTime
属性排序,然后将其作为 FullName
(即路径)返回
public List<string> MapMyFiles()
{
List<FileInfo> batchaddresses = new List<FileInfo>();
foreach (object o in lstViewAddresses.Items)
{
try
{
string[] files = Directory.GetFiles(o.ToString(), "*-E.esy");
files.ToList().ForEach(f => batchaddresses.Add(new FileInfo(f)));
}
catch { }
}
return batchaddresses.OrderBy(f => f.CreationTime).Select(f => f.FullName).ToList();
}
关于c# - 按创建顺序获取文件列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4502456/