你如何弄清楚给定NSString的日期格式是什么?

时间:2014-01-31 15:56:30

标签: objective-c nsstring nsdateformatter

Hey StackOverflow People,

我有一个日期时间戳NSString,其值来自后端服务器:

NSString *date = @"2014-01-27T21:06:59.000-05:00";

我不能为我的生活找出上面字符串的日期格式是什么,并且一直在尝试使用具有以下两种日期格式的NSDateFormatter对象(两者都返回了我{{ 1}}):

格式1:nil

格式2:@"yyyy-MM-ddThh:mm:ss.000-05:00";

我的问题是:您如何使用已经给定的字符串确定您正在使用的日期格式?

1 个答案:

答案 0 :(得分:3)

试试这个,它有效:

@"yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"

-05:00是时区,你需要使用ZZZZZ

另外,由于T不是日期的一部分,因此您需要使用'T'

请注意HH而不是hh

使用示例查找所有格式化程序:

http://www.unicode.org/reports/tr35/tr35-25.html#Date_Format_Patterns

关于如何了解格式的问题,您必须根据所看到的内容进行猜测,或者询问提供该日期的人。