【发布时间】:2011-12-29 20:34:17
【问题描述】:
我在 iPhone 上解析一个 KML 文件,我需要知道 KML 文件中这个字符串的时间格式是什么:2011-05-16T08:00:59Z。
我认为它类似于以下内容,但我不知道Z 代表什么:YYYY-MM-ddTHH:mm:ss。
提前致谢。
XcodeDev
【问题讨论】:
标签: objective-c xml timestamp kml time-format
我在 iPhone 上解析一个 KML 文件,我需要知道 KML 文件中这个字符串的时间格式是什么:2011-05-16T08:00:59Z。
我认为它类似于以下内容,但我不知道Z 代表什么:YYYY-MM-ddTHH:mm:ss。
提前致谢。
XcodeDev
【问题讨论】:
标签: objective-c xml timestamp kml time-format
【讨论】:
YYYY-MM-DDThh:mm:ssZ.
Z 是正确的字母。如果不是UTC,最简单的方法就是计算等效的UTC时间。或者,您can add the timeuone offset。你能澄清It doesn't work吗?你的程序目前输出了什么,你是如何检测到它不起作用的?
我在 Python 中使用它来将 Django 对象转换为 KML TimeStamp(请注意 TimeStamp 中的大写 S - 这让我很困惑):
from datetime import datetime
from pytz import timezone
# Access the Date Time of the created object
dtg = str(loc.created_at)
# Import the Django timestamp (which includes miliseconds)
datetime_obj = datetime.strptime(dtg, "%Y-%m-%d %H:%M:%S.%f+00:00")
# Convert it to UTC Format
datetime_obj_utc = datetime_obj.replace(tzinfo=timezone('UTC'))
# Convert it to Zulu time
date_time = datetime_obj_utc.strftime('%Y-%m-%dT%H:%M:%SZ')
# Build the KML output
output += ' <Placemark><name>Feature</name>\n'
output += ' <TimeStamp><when>'+date_time+'</when></TimeStamp>\n'
...
【讨论】: