Question

En C #, si je souhaitais analyser une chaîne en une date et une durée, je procéderais de la manière suivante:

String input = "08:00";
DateTime time;
if (!DateTime.TryParse(input, out time))
{
    // invalid input
    return;
}

TimeSpan timeSpan = new TimeSpan(time.Hour, time.Minute, time.Second);

Mon Google-Fu a été moins que souhaitable pour trouver un moyen de convertir cela en Objective-C.

Des suggestions?

Était-ce utile?

La solution

Le Guide de programmation de date et heure pour Cocoa sera probablement utile pour trouver l'approche qui correspond le mieux à vos besoins. Je parie que NSDateComponents sera particulièrement intéressant - vous pouvez obtenir une instance de cette classe à partir de - [Composants NSCalendar: fromDate:] méthode.

Pour obtenir la date d'une chaîne, vous pouvez essayer d'utiliser NSDateFormatter , qui utilise des méthodes telles que -dateFromString: et -stringFromDate: pour convertir des représentations NSString à NSDate. Vous pouvez utiliser -setDateFormat: pour spécifier la chaîne de format à utiliser pour l'analyse. Une fois que vous avez un objet NSDate , vous pouvez également en utiliser un. de ses méthodes -timeIntervalSince ... pour obtenir un NSTimeInterval , qui est une valeur double, mesurée en secondes.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top