【发布时间】:2014-11-24 18:53:30
【问题描述】:
比如说,我有一个日期:2014-11-24 12:24:25 存储在一个 NSString 变量中。
我正在尝试将其转换为 NSDate 对象,以便计算未来日期:
NSDate *futureTimeStamp;
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
NSDate *oldDate = [dateFormatter dateFromString:timestamp];
它一直告诉我旧的日期时间是:2014-11-24 06:46:06 +0000,这是不正确的。
任何想法为什么它没有正确转换它?
更新 #1:
时间戳是一个字符串。存储在该变量中的是:2014-11-24 12:58:40
当我打印出 oldDate 时,它会在 2014-11-24 06:58:40 +0000 中显示这一点
【问题讨论】:
-
NSDate 总是以 UTC 格式转储。
-
无论您身在何处,您的设备都会认为它是 GMT+6。我不知道为什么,但问题是一样的。代码运行正常。
-
看看“hh”是什么意思。
-
当您开始在真实硬件上进行测试时,您可能应该知道local "feature"。
标签: ios objective-c nsdate datetime-conversion