3
NSString* dateString = @"2012-04-01T15:37:53Z";

ISO8601DateFormatter *dateFormat = [[ISO8601DateFormatter alloc] init];
[dateFormat setIncludeTime:YES];
NSTimeZone *utcTimeZone = [NSTimeZone timeZoneWithName:@"UTC"];

NSDate* date = [dateFormat dateFromString:dateString timeZone:&utcTimeZone];

STAssertEqualObjects([dateFormat stringFromDate:date timeZone:utcTimeZone], dateString, nil, nil);

上述测试失败

'2012-04-01T16:37:53Z' 应该等于 '2012-04-01T15:37:53Z'

不知道为什么 stringFromDate:date 返回的 NSString 是 1 小时后,因为两个日期都使用 UTC。

4

1 回答 1

1

看起来#stringFromDate 中存在已在 fork 中解决的错误

于 2012-11-06T11:54:34.570 回答