2013-04-15 3 views
3

Я пытаюсь проанализировать дату и время строки в одном объекте .NET DateTime. У меня есть следующий код:Parse String в объект DateTime в C#

string dtObjFormat = "dd MMM YYYY HH:mm"; 
string mydatetimemash = e.Date + " " + e.Time; // this becomes 25 May 2013 10:30 
DateTime dt; 

if (DateTime.TryParseExact(mydatetimemash, dtObjFormat, CultureInfo.InvariantCulture, DateTimeStyles.None, out dt)) 
{ 
    Console.WriteLine(dt); 
} else 
{ 
    dt = DateTime.Now; 
    Console.WriteLine(dt); 
} 

Но TryParseExact всегда возвращает ложь для меня, означая Анализировать терпит неудачу. Что я делаю не так?

+5

Я думаю, что потребность Вашего Y, чтобы быть в нижнем регистре. – JMK

+0

@JMK, пожалуйста, напишите как «Ответ», чтобы отметить его как «Ответ». Ты был прав! :) – Ciwan

+2

@JKM Держу пари, это всего лишь тестовый код; в реальном коде он будет анализировать реальные даты. –

ответ

2

потребность Вашего Y, чтобы быть в нижнем регистре, например, так:

string dtObjFormat = "dd MMM yyyy HH:mm"; 
string mydatetimemash = e.Date + " " + e.Time; // this becomes 25 May 2013 10:30 
DateTime dt; 

if (DateTime.TryParseExact(mydatetimemash, dtObjFormat, CultureInfo.InvariantCulture, DateTimeStyles.None, out dt)) 
{ 
    Console.WriteLine(dt); 
} else 
{ 
    dt = DateTime.Now; 
    Console.WriteLine(dt); 
} 
+0

Ха-ха наконец: D Большое спасибо JMK.^_^ – Ciwan

+0

га без проблем, рад, что я помог :) – JMK