Puede probar usted mismo que NSDateFormatter
tiene un comportamiento diferente según el inicializador que elija y el SDK con el que está compilando. Lo siguiente se prueba con SDK 10.5 y 10.6.
NSDateFormatter* df = [[NSDateFormatter alloc] initWithDateFormat:@"yyyyMMdd" allowNaturalLanguage:NO];
if ([df formatterBehavior] == NSDateFormatterBehavior10_0)
NSLog(@"NSDateFormatterBehavior10_0");
else if ([df formatterBehavior] == NSDateFormatterBehavior10_4)
NSLog(@"NSDateFormatterBehavior10_4");
Esto devuelve NSDateFormatterBehavior10_0
.
En cambio, cuando usa [[NSDateFormatter alloc] init];
, el comportamiento es NSDateFormatterBehavior10_4
.
¿Dónde leíste esto? – prgmast3r
Documentación oficial: http://developer.apple.com/library/ios/#documentation/Cocoa/Reference/Foundation/Classes/NSDateFormatter_Class/DeprecationAppendix/AppendixADeprecatedAPI.html – bontoJR
Estoy bastante seguro de que "setLocale" y "setTimeStyle" son los formas correctas de hacer esto, solo tengo curiosidad de cómo se supone que debes obtener la instancia NSDateFormatter ahora? – fuzzygoat