cela m'a rendu fou, quelqu'un s'il vous plaît montrez-moi où je l'ai foiré.NSDateFromatter ne donne pas la bonne valeur MMMM
J'ai également créé un nouveau projet pour tester cela. L'environnement est xcode 3.2.5 s'exécutant dans le simulateur et sur un périphérique a le même résultat.
Lorsque je crée un formateur de date et définissez son format puis transmettre une chaîne, quelque chose ne fonctionne pas sur le formateur de date.
int tmpMonth = 11;
int tmpYear = 2010;
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"m/d/yyyy"];
NSString *dateAsString = [[NSString alloc] initWithFormat:@"%d/23/%d",tmpMonth,tmpYear];
NSDate *theDate = [[NSDate alloc] initWithTimeInterval:0 sinceDate:[dateFormatter dateFromString:dateAsString]];
[dateFormatter setDateFormat:@"MMMM d, yyyy"];
NSLog(@"%@",[dateFormatter stringFromDate:theDate]);
[dateFormatter setDateFormat:@"m/d/yyyy"];
NSLog(@"%@",[dateFormatter stringFromDate:theDate]);
[dateFormatter release];
[theDate release];
[dateAsString release];
cela se traduit par cette sortie:
[Session started at 2010-12-03 17:47:04 -0600.]
2010-12-03 17:47:05.274 wtfDateFormatter[18970:207] January 23, 2010
2010-12-03 17:47:05.277 wtfDateFormatter[18970:207] 11/23/2010
Je ne sais pas pourquoi il est l'impression Janvier quand je lui donne le format MMMM, car cela fonctionne très bien dans d'autres parties de mon application, il utilise simplement une source NSDate différente.
dang il. c'était ça. Je savais que j'ai regardé cela trop longtemps – AtomRiot