NSDateFormatter使用和不使用毫秒来解析ISO8601

时间:2014-01-12 12:36:06

标签: objective-c cocoa datetime

是否可以NSDateFormatter解析带有和不带毫秒的ISO8601日期。

我有一个API返回以下2种日期格式,有时它们包含毫秒,有时不包括。

例如,我可能有2013-07-23T13:45:02Z2013-07-23T13:45:02.677Z。对于前一个设置,dateFormat属性为@"yyyyMMdd'T'HHmmss'Z'"可以正常工作。

是否有一种格式可用于解析后者,如果存在,可选择解析毫秒数?

1 个答案:

答案 0 :(得分:8)

对于“2013-07-23T13:45:02Z”
使用:“yyyy-MM-dd'T'HH:mm:ssZ”

对于“2013-07-23T13:45:02.677Z”
使用:“yyyy-MM-dd'T'HH:mm:ss.SSSZ”

检查日期格式字符串以查看要使用的字符串或尝试使用哪一个,如果失败则尝试另一个。

请参阅:ICU Formatting Dates and Times