在C#中按日期排序文本文件数组

时间:2013-11-30 15:23:47

标签: c# sorting datetime console-application

我有一个文本文件导入并存储在一个字符串数组中,如下所示:

firstname, lastname, middlename, D/O/B, gender    
firstname, lastname, middlename, D/O/B, gender    
firstname, lastname, middlename, D/O/B, gender

etc etc etc

我想通过DOB(studentFile [3])对文件进行排序,但无法让应用程序按日期时间读取数组。这就是我到目前为止所拥有的

var dateOrder = studentFile.OrderByDescending(x => DateTime.Parse(x.Split(',')[4]));
foreach (var date in dateOrder)
{
    Console.WriteLine("\t" + date);
}

关于我哪里出错以及如何纠正错误的想法?

2 个答案:

答案 0 :(得分:0)

x.Split(',')的结果索引应为3,而不是4

答案 1 :(得分:0)

首先,将索引设置为3.其次,尝试显式声明日期时间数组:

DateTime[] dateOrder = studentFile.OrderByDescending(x => DateTime.Parse(x.Split(',')[3]));
foreach (DateTime date in dateOrder)
    {
         Console.WriteLine("\t" + date.ToString());
    }