Преобразовать в объект DateTime - PullRequest
3 голосов
/ 01 ноября 2011

У меня есть программа на c #, которая, помимо прочего, должна иметь возможность анализировать строку, которая выглядит следующим образом:

2011-09-20_104627

Для действительного объекта DateTime.

Может кто-нибудь помочь мне с кодом?

Ответы [ 4 ]

4 голосов
/ 01 ноября 2011

Использование DateTime.TryParseExact ()

string myDateTimeString = "2011-09-20_104627";
DateTime myDateTimeObject;
DateTime.TryParseExact(myDateTimeString,
                       "yyyy-MM-dd_HHmmss",
                       CultureInfo.InvariantCulture,
                       DateTimeStyles.None,
                       out myDateTimeObject);

Примечание:"ЧЧ" == 24-часовой формат. "чч" == 12-часовой формат.

4 голосов
/ 01 ноября 2011

DateTime.ParseExact выглядит как хорошее предположение.

В вашем случае DateTime.ParseExact("2011-09-20_104627","yyyy-MM-dd_HHmmss",System.Globalization.CultureInfo.InvariantCulture) работает.

3 голосов
/ 01 ноября 2011

Непроверенный, с манжеты ...

DateTime dt;
// HH for 24-hour clock; hh for 12-hour clock
if (DateTime.TryParseExact("yyyy-MM-dd_HHmmss", out dt)) 
{
    ...
}
2 голосов
/ 01 ноября 2011

Вы должны иметь возможность использовать DateTime.ParseExact с правилом пользовательского формата.

http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

Я не знаю, что такое 014627 в вашем примере, но оно начнется с

yyyy-MM-dd_
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...