2011-11-15 80 views
0

我正在解析iPhone上的KML文件,我需要知道KML文件中該字符串的時間格式是:2011-05-16T08:00:59ZKML文件中使用的時間格式是什麼?

我認爲這是沿着以下幾行的某處,但我不知道Z代表什麼:YYYY-MM-ddTHH:mm:ss

謝謝先進。

XcodeDev

回答

1

這是ISO 8601Z代表Zulu time,也稱爲UTC或GMT,即+0時區。

+1

謝謝,但我用什麼字母,Z?我嘗試了以下方法,但不起作用 - 'YYYY-MM-DDThh:mm:ssZ'。 –

+0

@XcodeDev如果時間的時區是UTC,那麼'Z'是正確的字母。如果它不是UTC,最簡單的方法就是計算等效的UTC時間。或者,您[可以添加時間偏移量](http://en.wikipedia.org/wiki/ISO_8601#Time_offsets_from_UTC)。你能澄清一下嗎?它不起作用?你的程序目前輸出了什麼,以及如何檢測到它不起作用? – phihag

0

我用這個在Python轉換Django的對象爲KML時間戳(請注意時間戳大寫的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' 
... 
相關問題