0

在 Google App Engine 中,我有一个带有(auto_now_add=True). 在我 iPhone 上的 Objective-C 中,获取当前时间让我得到了我2012-04-17 6:55:01,而在 Python 上auto_now_add得到了我2012-04-17 11:55:01

6:55是我的当地时间,我不确定 Python 日期的时区或格式。如何通过 Python 或 Objective-C 使两者匹配?

编辑:显然 Python 日期是 UTC 格式。但是我的 iPhone 日期是什么格式的?我[NSDate date]还以为是UTC?为什么我得到不同的结果?

编辑2:好的。需要在 Objective-C 中执行此操作

NSTimeZone *timeZone = [NSTimeZone timeZoneWithName:@"UTC"];
[formatter setTimeZone:timeZone];
4

1 回答 1

2

这是因为应用程序引擎始终在 UTC 时间运行,您的手机可能处于不同的时区。

运行时的 TZ 环境变量设置为 UTC,并且无法更改。例如 time.time() 和 datetime.datetime.now() 返回的时间戳将始终采用 UTC。同样,数据存储中的日期时间属性将始终作为 UTC 存储和返回。

您可以使用 astimezone() 方法更改内存中日期时间的时区。

来源

于 2012-04-17T12:54:47.907 回答