NSDateFormatter在凌晨2点返回nil

时间:2013-03-10 21:15:07

标签: iphone ios nsdateformatter dst

我正在尝试使用以下代码将字符串转换为NSDate:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone localTimeZone]];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss"];
NSDate *date= [dateFormatter dateFromString:@"2013-03-10T02:00:00"];

除了02:00:00之外的所有时间都可以正常工作,如上所示,返回nil。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

这是因为2013年3月10日在美国发生的夏令时

系统时间直接从凌晨1:59跳到凌晨3点。
你失去了一个小时,你在11月DST生效时获得了