如题,例子:
2008-07-08 15:17:00
2008-06-13 09:43:00
2008-06-12 10:11:00
2008-12-20 14:02:00
2008-12-19 04:22:00
2008-05-18 20:00:00
比较后得到的结果是:
1.2008-12-20 14:02:00
2.2008-12-19 04:22:00
3.2008-07-08 15:17:00

解决方案 »

  1.   

    List<DateTime> list = new List<DateTime>();
            list.Add(Convert.ToDateTime("2008-07-08 15:17:00"));
            list.Add(Convert.ToDateTime("2008-06-13 09:43:00"));
            list.Add(Convert.ToDateTime("2008-06-12 10:11:00"));
            list.Add(Convert.ToDateTime("2008-12-20 14:02:00"));
            list.Add(Convert.ToDateTime("2008-12-19 04:22:00"));
            list.Add(Convert.ToDateTime("2008-05-18 20:00:00"));
            list.Sort();最大3个list[5],list[4],list[3]
      

  2.   

       SortedList<string, string> _Time = new SortedList<string, string>();            _Time.Add("2008-07-08 15:17:00","");
                _Time.Add("2008-06-13 09:43:00", "");
                _Time.Add("2008-06-12 10:11:00", "");
                _Time.Add("2008-12-20 14:02:00", "");
                _Time.Add("2008-12-19 04:22:00", "");
                _Time.Add("2008-05-18 20:00:00", "");            for (int i = 0; i != 3; i++)
                {                MessageBox.Show(_Time.Keys[_Time.Count-1-i].ToString());
                }
      

  3.   

    放到数组里,先Sort(),再Reverse()~ 0,1,2~
      

  4.   

     ArrayList ArrData = new ArrayList();
     ArrData.Add(dt1);
     ArrData.Add(dt2);
     ArrData.Add(dt3);
     ArrData.Add(dt4);
     ArrData.Add(dt5);
     ArrData.Add(dt6);
    ArrData.Sort();
    ArrData[5],ArrData[4],ArrData[3]就是最大的三个
      

  5.   

    //看到排序就忍不住datatable
        DataTable dt = new DataTable();
            dt.Columns.Add("datestr");
            AddRow(dt, "2008-12-08 15:18:00");
            AddRow(dt, "2008-12-09 15:18:00");
            AddRow(dt, "2008-12-10 15:18:00");
            DataView dv = dt.DefaultView;
            dv.Sort = "datestr desc";
            for (int i = 0; i < dv.Count; i++)
            {
                Response.Write(dv[i][0].ToString());
            }
            dt.Dispose();
        }
        private void AddRow(DataTable dt, string vstr)
        {
            DataRow dr = dt.NewRow();
            dr["datestr"] = vstr;
            dt.Rows.Add(dr);
        }
      

  6.   

    最原始的数组排序呵呵~
            static void Main(string[] args)
            {
                DateTime[] Marks = new DateTime[6];
                Marks[0] = DateTime.Parse("2008-12-25 17:07:14");
                Marks[1] = DateTime.Parse("2008-12-25 17:08:14");
                Marks[2] = DateTime.Parse("2008-12-25 17:06:14");
                Marks[3] = DateTime.Parse("2008-12-25 17:05:14");
                Marks[4] = DateTime.Parse("2008-12-25 17:04:14");
                Marks[5] = DateTime.Parse("2008-12-25 17:02:14");            Array.Sort(Marks);
                Array.Reverse(Marks);            for (int x = 0; x < 3; x++)
                {
                    Console.WriteLine(Marks[x]);
                    System.Threading.Thread.Sleep(1000);
                }
                Console.Read();        }
      

  7.   


     List<DateTime> list = new List<DateTime>();
                DateTime[] times = new DateTime[] { Convert.ToDateTime("2008-05-18 20:00:00"), Convert.ToDateTime("2008-07-08 15:17:00"), Convert.ToDateTime("2008-06-13 09:43:00"), 
                    Convert.ToDateTime("2008-06-12 10:11:00"), Convert.ToDateTime("2008-12-20 14:02:00"), Convert.ToDateTime("2008-12-19 04:22:00") };            list.AddRange(times);
                list.Sort(new Comparison<DateTime>(delegate(DateTime x, DateTime y) { return y.CompareTo(x); }));
                for (int i = 0; i < 3; i++)
                {
                    MessageBox.Show(list[i].ToString());
                }
      

  8.   

    你添加在winfrom窗口添加一个按钮,把上面的方法全部复制到这个按钮的Click事件里面去直接运行就可以了.
    结果保证是你想要的
      

  9.   

    下面这样也是可以的List<DateTime> list = new List<DateTime>();
    DateTime[] times = new DateTime[] { Convert.ToDateTime("2008-05-18 20:00:00"), Convert.ToDateTime("2008-07-08 15:17:00"), Convert.ToDateTime("2008-06-13 09:43:00"), Convert.ToDateTime("2008-06-12 10:11:00"), Convert.ToDateTime("2008-12-20 14:02:00"), Convert.ToDateTime("2008-12-19 04:22:00") };
    list.AddRange(times);
    list.Sort((x, y) => y.CompareTo(x));
    for (int i = 0; i < 3; i++)
    {
        MessageBox.Show(list[i].ToString());
    }