【发布时间】:2014-07-23 11:48:33
【问题描述】:
我正在尝试将 Unix 时间字符串转换为 Xcode 中的日期,但我的时间总是错误的两个小时。我无法弄清楚我做错了什么。有人可以帮帮我吗?
NSString *unixTime = @"1402473600";
NSTimeInterval timeStamp = [unixTime doubleValue];
NSDate *date = [NSDate dateWithTimeIntervalSince1970:timeStamp];
它给了我:2014-06-11 10:00:00 CEST
...但应该是:2014-06-11 08:00:00 CEST
【问题讨论】:
-
根据onlineconversion.com/unix_time.htm,现在是“格林威治标准时间 2014 年 6 月 11 日星期三 08:00:00”
-
是的,但这不是 xcode 给我的...
-
xCode 记录 +0000 时间,而您希望 CEST 时间有 2 小时的差异。
-
已确认 - 转换为您的时区时,Unix 1402473600 的正确日期是
Jun 11 2014 10:00:00 GMT+2,即 CEST。 Xcode 为您提供了完全正确的值。 -
这是因为您在
NSLog()调用中使用了[NSDate description]。使用NSDateFormatter打印日期,并使用正确配置的时区,情况会有所不同。
标签: ios objective-c xcode unix-timestamp