42 votes

NSTimeInterval Mise en forme

Je veux prendre mon `` et le formater en une chaîne comme 00:00:00 (heures, minutes, secondes). Quelle est la meilleure façon de le faire?

107voto

Johan Kool Points 8778

Depuis iOS 8.0, il y a maintenant qui a une méthode.

62voto

rob mayoff Points 124153

« Meilleur » est subjectif. Le moyen le plus simple est le suivante:

METTRE À JOUR

À partir d’iOS 8.0 et de Mac OS X 10.10 (Yosemite), vous pouvez l’utiliser `` si vous avez besoin d’une solution compatible avec les paramètres régionaux. Exemple:

Cependant, je ne vois pas de moyen de le forcer à produire deux chiffres pour l’heure, donc si cela est important pour vous, vous devrez utiliser une solution différente.

27voto

Michael Frederick Points 12700
NSTimeInterval interval = ...;    
NSDate *date = [NSDate dateWithTimeIntervalSince1970:interval];    
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"HH:mm:ss"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"UTC"]];
NSString *formattedDate = [dateFormatter stringFromDate:date];
NSLog(@"hh:mm:ss %@", formattedDate);

4voto

William Hu Points 16

rapide 4.2

Code de test :

Changez pour obtenir différents styles. comme obtenir

sortie: ``

0voto

richdcs Points 141

Une version Swift de la réponse de @Michael Frederick :

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X