Не признавая часы Минуты и секунды как часть действительного формата даты - PullRequest
0 голосов
/ 24 ноября 2018

Попытка разобрать эту строку в переменную datetime:

var test = "2018 11 24 17 3 57 345";
var format = "yyyy MM dd HH mm ss fff";
var dt = DateTime.ParseExact(dt, format, CultureInfo.InvariantCulture);

Я получаю эту ошибку:

System.FormatException HResult = 0x80131537 Message = String '2018 11 24 173 57 345 'не был признан действительным DateTime.Source = System.Private.CoreLib StackTrace: в System.DateTime.ParseExact (строка String, формат String, поставщик IFormatProvider) строка 28

1 Ответ

0 голосов
/ 24 ноября 2018
var test = "2018 11 24 17 3 57 345";
var format = "yyyy MM dd HH m ss fff";
var dt = DateTime.ParseExact(dt, format, CultureInfo.InvariantCulture);

mm - 00 - 59, m - 0 - 59.

Для поддержки обоих типов укажите два формата:

var test = "2018 11 24 17 3 57 345";
var format = "yyyy MM dd HH m ss fff";
var format2 = "yyyy MM dd HH mm ss fff";
var dt = DateTime.ParseExact(dt, new string[] { format, format2 }, CultureInfo.InvariantCulture);
...