2012-01-11 19 views
11

Sé que esta pregunta es similar a la de otros, pero no puedo encontrar dónde está yendo mal mi código. Estoy tratando de convertir la fecha actual en un formato mm/dd/aaaa. Esto es lo que estoy usando:Convertir NSDate a mm/dd/aaaa

NSDate *date = [[NSDate alloc]init]; 

NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease]; 
[formatter setDateFormat:@"mm/dd/yyyy"]; 

NSLog(@"%@", [formatter stringFromDate:date]); 

El problema es el mes. Cada vez que ejecuto este código, el mes es diferente. Por ejemplo, la primera vez que mi cita fue el 32/11/2012, la ejecuté y fue el 55/11/2012.

¿Hay alguna razón por la cual esto podría seguir cambiando? Los días y los años parecen estar bien.

Gracias.

Respuesta

41

Compruebe si la caja:

mm significa minutos

MM significa meses

lo que el código probablemente debería leer

NSDate *date = [[NSDate alloc]init]; 

NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
[formatter setDateFormat:@"MM/dd/yyyy"]; 

NSLog(@"%@", [formatter stringFromDate:date]); 
+1

+1 Me golpearon. Aquí está el enlace a [la especificación] (http://unicode.org/reports/tr35/tr35-10.html#Date_Format_Patterns). –

Cuestiones relacionadas