2010-12-02 43 views
2

Je me demande comment je peux diviser une heure en deux variables.Temps intermédiaire pour deux variables en C#

Je reçois mon temps comme celui-ci

string myTime = Console.ReadLine(); 

et si je tape 12h14 comment puis-je faire pour obtenir 12 dans une variable et 14 dans un autre?

Répondre

9

Parse à un TimeSpan et retirer les pièces de cette façon:

TimeSpan ts = TimeSpan.Parse("12:14"); 
int hours = ts.Hours; 
int minutes = ts.Minutes; 

Une tête supplémentaire avec l'aide TimeSpan est qu'il valide également pour vous. Surtout quand il est associé à la méthode TryParse, cela peut produire un code très fiable:

TimeSpan ts; 
if (TimeSpan.TryParse("12:99", out ts)) 
{ 
    // the string is a valid time, use it 
} 
else 
{ 
    // the string is not a valid time, handle that scenario 
} 
+0

Une meilleure solution que ma suggestion –

0

En utilisant la méthode String.Split().

string [] result = myTime.Split(':'); 
string hours = result[ 0 ]; 
string minutes = result[ 1 ];