将NSString转换为NSDate,但是用下面的代码实现后, 只有用户的设备时间在12小时制时才有效,24小时制的时候转换后的结果为nil 。
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
[formatter setDateFormat:@"yyyy-MM-dd hh:mm:ss a"];
NSString *aTime = @"2018-11-14 2:00:00 AM";
NSDate *aDate = [formatter dateFromString:aTime];
解决方法:
指定formatter 的locale
formatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]
这样你无论在12小时制 或者 24小时制下都能得到相同的结果。