2013-04-15 2 views
3

J'essaye d'analyser une date et une heure de chaîne dans un seul objet .NET DateTime. J'ai le code suivant:Analyser une chaîne dans un objet DateTime dans 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); 
} 

Mais le TryParseExact retourne toujours faux pour moi, ce qui signifie le Parse échoue. Qu'est-ce que je fais mal?

+5

Je pense que le besoin d'être minuscule de votre Y. – JMK

+0

@JMK s'il vous plaît poster comme réponse, de sorte que je le marque comme réponse. Tu avais raison! :) – Ciwan

+2

@JKM Je parie que c'est juste du code de test; dans le vrai code, il analysera les dates réelles. –

Répondre

2

Votre besoin de Y pour être minuscules, comme ceci:

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

Haha enfin: D Merci beaucoup JMK.^_^ – Ciwan

+0

ha pas de problème, content d'avoir aidé :) – JMK

Questions connexes