我在iOS 11.4上从字符串转换Date时遇到麻烦。 iOS 11.4上的同一个func返回nil,但在iOS 13中返回正确的值。
我正在使用Xcode 11.0,并且此转换函数:
+ (NSDate *)getDateFromStringDate:(NSString *)stringDate {
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ssZ"];
return [dateFormat dateFromString:stringDate];
}
最佳答案
NSISO8601DateFormatter比您可以编写的任何格式字符串都了解更多信息,并且更灵活。将您的代码重写为
+ (NSDate *)getDateFromStringDate:(NSString *)stringDate {
NSISO8601DateFormatter * df = [NSISO8601DateFormatter new];
return [df dateFromString:stringDate];
}