У меня есть функция для преобразования в NSDate
с помощью NSDateFormatter
.
+(NSDate*)getDateFromCurrentTimestamp:(NSString*)currentTimestamp{
// currentTimestamp= @"28-Feb-2012 16:42:19 PM";
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDoesRelativeDateFormatting:NO];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]];
[dateFormatter setFormatterBehavior:NSDateFormatterShortStyle];
//[NSDateFormatter setDefaultFormatterBehavior:NSDateFormatterBehaviorDefault];
[dateFormatter setDateFormat:@"dd-MMM-yyyy HH:mm:ss a"];
return [dateFormatter dateFromString:currentTimestamp];
}
IOS 5.x возвращается правильно NSDate
.при запуске на 4.1 и 4.2 также возвращается правильный NSDate
.при запуске на 4.3.2 и 4.3.3 возвращается null
.
как это возможно?любой обходной путь этого?
РЕДАКТИРОВАТЬ
Это не , вызванный ошибкой iOS.это связано с самим телефоном.в некоторых телефонах в устройстве установлено другое значение locale
.поэтому нам пришлось заставить его использовать один locale
.