Im essayant d'augmenter une date et obtenir une sortie formatée pour chaque mois ... cela fonctionne très bien, mais l'étape Dec 2010 à Jan 2011 ne fonctionne pas. s'il vous plaît jeter un oeil à ceci:NSDateFormatter problème avec augmenté Date
NSCalendar *gregorian = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease];
NSDate *lastDate = [[NSDate alloc] init];
for (int i = 0; i < 12; i++) {
NSDateComponents *offsetComponents = [[[NSDateComponents alloc] init] autorelease];
[offsetComponents setMonth: 1];
lastDate = [[gregorian dateByAddingComponents:offsetComponents toDate: lastDate options:0] retain];
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setTimeStyle:NSDateFormatterNoStyle];
[dateFormatter setDateFormat:@"MMMM YYYY"];
NSLocale *locale = [[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease];
[dateFormatter setLocale:locale];
NSLog(@"%d: Fromatted Date: %@ from : %@", i, [dateFormatter stringFromDate:lastDate], lastDate);
}
sortie de débogage: [. Session a commencé à 2010-07-01 11:05:18 0200] 0: Fromatted Date: Août 2010 de: 2010-08 -01 11:05:19 +0200
1: Fromatted date: Septembre 2010 à partir de: 2010-09-01 11:05:19 +0200
2: Fromatted date: Octobre 2010 à partir de: 2010-10 -01 11:05:19 +0200
3: Date de début: Novembre 2010 à partir de: 2010-11-01 11:05:19 +0100 4: Date de début: Décembre 2010 à partir de: 2010-12-01 11:05:19 +0100
5: Date de début: janvier 2010 à partir de: 2011-01 -01 11:05:19 +0100 < --- POURQUOI est l'année 2010?!
6: Fromatted Date: Février 2011 à partir de: 2011-02-01 11:05:19 +0100
7: Fromatted Date: Mars 2011 à partir de: 2011-03-01 11:05:19 +0100
8: Fromatted date: Avril 2011 à partir de: 2011-04-01 11:05:19 +0200
9: Fromatted date: mai 2011 à partir de: 2011-05-01 11:05:19 +0200
10: Date de début: Juin 2011 à partir de: 2011-06-01 11:05:19 +0200
11: Date d'arrêt: Juillet 2011 à partir de: 2011-07-01 11:05:19 +0200
C'est certainement la réponse. Remplacé YYYY avec yyyy - et tout fonctionne maintenant. – HiveHicks
Merci; ça a réglé mon problème aussi! :-) –