Suppression du temps de format de date
-
05-10-2019 - |
Question
Je développe une application que je l'ai utilisé DatePicker pour sélectionner la date, mais il me donne rendez-vous avec le temps .J'ai converti ce format en chaîne, maintenant je veux juste la date de cela. Comment dois-je faire that.Plz me suggérer quelque chose.
Après mon code Snippet.
NSDate *selected =[datePicker date];
NSString *dateString = [NSString stringWithFormat:@"%@", selected];
ici sélecteur de date est objet de UIDatePicker.
La solution
Vous pouvez utiliser NSCalendar
pour obtenir le mois, le jour et les composants de l'année de date, les manipuler et les assembler de nouveau. Voici quelques exemples de code.
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *dateComponents = [calendar components:( NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit ) fromDate:date];
[otherDateComponents setYear:[dateComponents year]];
[otherDateComponents setMonth:[dateComponents month]];
[otherDateComponents setDay:[dateComponents day]];
NSDate *newDate = [calendar dateFromComponents:otherDateComponents];
Sachez que depuis le calendrier actuel est locale spécifique, les valeurs que vous obtenez de retour ne seront pas les mêmes sur tous les appareils. Vous pouvez spécifier un calendrier particulier pour vos besoins. NSGregorianCalendar
est le plus souvent utilisé dans l'ouest.
Autres conseils
Voici une autre solution:
NSDate *selected =[datePicker date];
NSDateFormatter *formatter = [NSDateFormatter new];
[formatter setDateStyle:NSDateFormatterMediumStyle];
NSDate *day = [formatter dateFromString:[formatter stringFromDate:selected]];
[formatter release];