我已经为聊天应用程序编写了代码,可以在iOS 12上正常工作,在iOS 13中,它返回nil值。
这是我的dateformatter代码段。
-(NSDate *)stringToDateNew:(NSString*)strDate withForamt:(NSString *)strFormat {
@try
{
NSDate *myDate;
if(strDate!=NULL)
{
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:[NSString stringWithFormat:@"%@",strFormat]];
NSLocale * enUSPOSIXLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"] ;
if (enUSPOSIXLocale == nil) {
enUSPOSIXLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
}
else
{
[dateFormat setTimeZone:[NSTimeZone systemTimeZone]];
[dateFormat setLocale:enUSPOSIXLocale];
myDate = [dateFormat dateFromString:strDate];
return myDate;
}
}
return NULL;
}
@catch (NSException *exception)
{
NSLog(@"Excption in AppDelegate : stringToDate %@:%@",exception.name,exception.reason);
}
}
答案 0 :(得分:1)
使用格式为“ yyyy-mm-dd'T'hh:mm:ss.SSS”的格式。它也适用于os 13。