【发布时间】:2015-11-06 20:39:33
【问题描述】:
这是一个非常常见的问题,但我的问题可能是独一无二的,因为我的秒数有长小数位。
NSString *timestamp = @"2015-11-06 15:27:34.0000000";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss zzz"];
NSDate *capturedStartDate = [dateFormatter dateFromString: timestamp];
我的capturedStartDate 为空。
对于日期格式,我尝试将zzz 替换为Z、a,然后将其完全删除。我也尝试过使用和不使用'T'。有人知道从字符串中检索此日期的正确格式吗?
【问题讨论】:
-
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];我认为捕获更多小数点没有任何意义。下次,考虑阅读文档:unicode.org/reports/tr35/tr35-31/… -
@matt 我没有从 iOS 应用程序中捕获这个日期,而是从数据库中接收它。这只是我必须处理的格式,因为这就是它的存储方式。我同意,毫秒可能毫无意义。
-
我的意思是,超过小数点后三位,NSDate 不会区分。它没有那种精确度。因此,
".SSS"是您需要的所有 S。
标签: ios objective-c nsdate nsdateformatter