Dans mon application, j'ai besoin d'obtenir l'heure et les minutes séparément:
NSString *currentHour=[string1 substringWithRange: NSMakeRange(0,2)];
int currentHourInNumber=[currentHour intValue];
Considérez string1
contient 11:59:13 AM
qui provient de datepicker.
Ici, si j'utilise le code ci-dessus, il est normal d'obtenir l'heure si elle est supérieure à 9. Sinon, je dois changer NSMakeRange(0,1)
pour obtenir l'heure entre 1 et 9.
Existe-t-il des méthodes pour obtenir l'heure, les minutes, etc.?
Merci d'avance, veuillez me fournir un exemple de code.
Réponses:
Utilisez un NSDateFormatter pour convertir
string1
en unNSDate
, puis obtenez les NSDateComponents requis :Obj-C :
Swift 1 et 2 :
Swift 3 :
Plus d'informations sur le format de date sur le site officiel Unicode
la source
Si vous n'en avez besoin que pour présenter sous forme de chaîne, le code suivant est beaucoup plus simple
la source
Cela me semble être la question après, pas besoin de formateurs:
la source
NSDateComponents
Tout ce dont vous avez besoin peut être trouvé ici:
https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/DatesAndTimes/Articles/dtCalendars.html
la source
Si vous deviez utiliser la bibliothèque C, cela pourrait être fait:
Et en utilisant Swift:
Pour plus d'informations, voir: http://www.cplusplus.com/reference/ctime/localtime/
la source
Avec iOS 8, Apple a introduit une méthode d'aide pour récupérer le
hour
,minute
,second
etnanosecond
d'un objet NSDate.Objectif c
Rapide
la source
Swift 2.0
Vous pouvez faire la chose suivante pour obtenir des heures et des minutes à partir d'une date:
la source
Swift 2.0
Veuillez prendre note de la conversion en String dans l'instruction d'impression, vous pouvez facilement affecter cette valeur à des variables, comme ceci:
Ensuite, vous pouvez concaténer des valeurs comme ceci:
la source