Проблема может быть разделена на 2 части
- Разбор значения datetime из строки в datetime
- Сравнение двух значений даты и времени, чтобы понять, какое из них больше.
Синтаксический :
Используйте метод DateTime.Parse () для разбора datetime
string dateInput = "Jan 1, 2009";
DateTime parsedDate = DateTime.Parse(dateInput);
Console.WriteLine(parsedDate);
// Displays the following output on a system whose culture is en-US:
// 1/1/2009 12:00:00 AM
См. это для DateTime.Parse (). Вы также можете использовать DateTime.ParseExact (), если знаете, что строковый шаблон подтверждает указанный шаблон.
Сравнение : Используйте DateTime.Compare () для сравнения двух значений даты и времени.
Ссылка ссылка для Datetime.Compare ()
Таким образом, фактический код станет примерно таким:
using System;
public class Example
{
public static void Main()
{
string d1 = "Jan 1, 2009";
string d2 = "Feb 2, 2008";
DateTime date1 = DateTime.Parse(d1);
DateTime date2 = DateTime.Parse(d2);
int result = DateTime.Compare(date1, date2);
string relationship;
if (result < 0)
relationship = "is earlier than";
else if (result == 0)
relationship = "is the same time as";
else
relationship = "is later than";
Console.WriteLine("{0} {1} {2}", date1, relationship, date2);
}
}