【发布时间】:2015-11-04 13:32:35
【问题描述】:
我有这个时间戳:1439353372
这是在我们的一位用户(来自加拿大)向我发送消息(在印度)时生成的。
在我们的应用程序中 - 他看到该消息的以下时间:2015-08-11 / 22:22pm 而我看到的是 2015-08-12 / 09:52am。他在他的 iPhone6 上看到了这一点,而我在 iPhone6+ 模拟器上。
我认为这次是错误的 - 我对这个时间戳/时区和日期转换感到非常困惑。
下面是我们将时间戳转换为日期并以上述格式显示的代码。
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy-MM-dd"];
NSDate *date = [NSDate dateWithTimeIntervalSince1970:1439353372];
NSString *strDate = [df stringFromDate:date];
[df setDateFormat:@"HH:mm a"];
NSString *strTime = [df stringFromDate:date];
NSLog(@"%@",[NSString stringWithFormat:@"%@ / %@", strDate, strTime]);
我不确定这是在用户所在区域显示特定时间戳日期的正确方式吗?
我应该在上面的代码中添加什么,以便它始终根据我们的设备时区向我们显示正确的时间?
【问题讨论】:
标签: ios timezone timestamp nsdate utc