j'espère que rapide pour quelqu'un! J'ai du mal à voir pourquoi le code ci-dessous ne fonctionne pas. J'essaie d'obtenir la date du jour (par exemple: 2010-09-10) et d'ajouter manuellement l'heure. Il semble toujours revenir 00:00:00 pour le moment cependant. des idées où je vais mal?iphone NSDate - obtenir la date d'aujourd'hui et de forcer le temps
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
dateFormatter.dateFormat = @"yyyy-MM-dd";
NSString *actualDate = [dateFormatter stringFromDate:[NSDate date]];
NSDate *sDate = [dateFormatter dateFromString:[NSString stringWithFormat:@"%@ %@", actualDate, @"01:00:00"]];
NSDate *eDate = [dateFormatter dateFromString:[NSString stringWithFormat:@"%@ %@", actualDate, @"23:59:59"]];
Les objets NSDate retournent le format 2010-09-10 00:00:00 +01: 00 tout le temps. Quelque part, il ne prend pas le temps ... des idées? Merci beaucoup.
* MISE À JOUR *
Le code ci-dessous fonctionne. J'ai fait comme suggéré et a accédé aux éléments et les ai mis à jour.
unsigned unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
NSDate *date = [NSDate date];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *comps = [calendar components:unitFlags fromDate:date];
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
dateFormatter.dateFormat = @"yyyy-MM-dd hh:mm:ss";
//update for the start date
[comps setHour:0];
[comps setMinute:0];
[comps setSecond:0];
NSDate *sDate = [calendar dateFromComponents:comps];
//update for the end date
[comps setHour:23];
[comps setMinute:59];
[comps setSecond:59];
NSDate *eDate = [calendar dateFromComponents:comps];
Même quand j'ajoute hh: mm: ss, je reçois le temps, mais je ne suis pas intéressé par cela. Je dois simplement obtenir la date du jour, puis créer deux nouveaux NSDates à partir de cela. Une date de début de la date d'aujourd'hui et l'heure 00:00:00 et la date de fin de la date du jour et l'heure 23:59:59. Selon mon code, j'espérais obtenir seulement la date. Je ne suis pas intéressé par le temps ... Je veux donner le nouveau NSDate les fois que j'ai spécifié. –
Merci St3fan .. J'ai mis à jour mon message avec un nouveau code. –
Je viens de relire votre message et fait ce que vous avez dit! Désolé ... ça marche maintenant. Mettra à jour le code dans le mien pour le montrer fonctionner –