Конвертировать даты в C # - PullRequest
2 голосов
/ 03 февраля 2009

Кто-нибудь знает простой (встроенный) способ преобразования строки типа '20081231T130000' (мне кажется, ICalendar) в DateTime в C #? Или мне нужно разобрать строку?

Ответы [ 2 ]

8 голосов
/ 03 февраля 2009

Попробуйте это:

DateTime when = DateTime.ParseExact("20081231T130000",
    "yyyyMMddTHHmmss",CultureInfo.InvariantCulture);

В стороне: близко к формату, используемому в xml, но не совсем близко - иначе XmlConvert обернет это:

DateTime when = XmlConvert.ToDateTime("2008-12-31T13:00:00");
2 голосов
/ 03 февраля 2009

Это, кажется, работает:

string dateTimeString = "20080115T115959";
string format = "yyyyMMddTHHmmss";
IFormatProvider us = new System.Globalization.CultureInfo("en-US", true);

DateTime dt = DateTime.ParseExact(dateTimeString, format, us);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...