нужно преобразовать эту строку: Пн Окт 31 16:18:15 CDT 2011Как преобразовать строку действительного DateTime
В действительное значение DateTime.
Пробовал все варианты date time styles с DateTime.Parseto безрезультатно.
Любые идеи?
нужно преобразовать эту строку: Пн Окт 31 16:18:15 CDT 2011Как преобразовать строку действительного DateTime
В действительное значение DateTime.
Пробовал все варианты date time styles с DateTime.Parseto безрезультатно.
Любые идеи?
Проблема с CDT
у вас там есть. Это не действительная часть строки, представляющая DateTime
.
Возможно, вам удастся заменить это действительным представлением часового пояса -0500
и спецификатором формата K
.
Вы можете использовать следующую строку формата для разбора строки:
ddd MMM dd HH:mm:ss CDT yyyy
Например:
DateTime.ParseExact("Mon Oct 31 16:18:15 CDT 2011",
"ddd MMM dd HH:mm:ss CDT yyyy",
CultureInfo.InvariantCulture);
Я предлагаю прочитать документацию для Custom Date and Time Format Strings на MSDN.
Да, вам придется заменить этот CDT на смещение, как сказал Одед. – Jeremy
Спасибо, я прочитаю. Что ParseExact обрабатывал CDT просто отлично. – user569963
@ user569963 - Обратите внимание, что 'ParseExact' выдаст исключение, если оно не будет успешным. Существует «TryParseExact», который не будет генерировать исключение, но возвращает логическое значение, указывающее на успех или неудачу. – Oded
Вы заинтересованы в преобразовании между часовыми поясами или вы считаете, что часовой пояс в строке является локальным? – JohnFx
На самом деле просто хотите извлечь действительную дату/время и игнорировать День и часовой пояс, поскольку это будет использоваться как метка времени. – user569963
Является ли часовой пояс всегда CDT? Или это изменится? Я понимаю, что вы хотите, чтобы это игнорировалось? – Oded