Когда вы конвертируете строку в DateTime, вы должны указать, в каком формате находится ввод (как у вас). Если преобразование завершилось успешно, объект DateTime будет содержать данные для всех частей даты (годы, месяцы, дни и т. Д. c.), И если вы хотите снова просмотреть их как дату, вы должны указать, в каком формате вы хотите их видеть. При использовании DateTime.TryParseExact стоит отметить, что в случае сбоя преобразования будет установлено значение DateTime.MinValue .
Существуют различные способы отображения свидание снова Наиболее распространенным является указание пользовательского формата даты в виде строки. Другой способ - использовать стандартный формат .
var creationDate = "2020-04-13 13:23";
DateTime.TryParseExact(creationDate, "yyyy-MM-dd HH:mm", CultureInfo.CurrentCulture, DateTimeStyles.None, out DateTime dateTime);
var myCulture = new CultureInfo("en-GB");
if(dateTime > DateTime.MinValue)
{
Console.WriteLine("Your custom format date is: " + dateTime.ToString("yyyy-MM-dd HH:mm"));
Console.WriteLine("Your standard format date is: " + dateTime.ToString("g", myCulture));
}
Когда вы помещаете это в консольное приложение, результаты выглядят так:
С некоторыми стандартными форматами вам нужно будет определить культуру, так как она будет отличаться для чего-то вроде en-US по сравнению с чем-то вроде zh-CN. В моем случае я использовал «en-GB». Вот список принятых кодов культуры .