2011-11-15 10 views
0

私はiPhone上でKMLファイルを解析しています.KMLファイルのこの文字列の時刻形式は、2011-05-16T08:00:59Zです。KMLファイルで使用される時間形式は何ですか?

私はそれが次の行のどこかにあると思いますが、Zの略語はYYYY-MM-ddTHH:mm:ssです。

ありがとうございました。

XcodeDev

答えて

1

これはISO 8601です。 Zは、Zulu time(UTCまたはGMTとも呼ばれます)、つまり+0タイムゾーンの略です。

+1

おかげで、私はどのような文字を使用しない、Z?私は以下のことを試しましたが、動作しません - 'YYYY-MM-DDThh:mm:ssZ'。 –

+0

@XcodeDev時刻のタイムゾーンがUTCの場合、 'Z'は使用する正しい文字です。それがUTCでない場合、最も簡単な方法は、同等のUTC時間を計算することです。あるいは、あなたは[timeuone offsetを追加することができます](http://en.wikipedia.org/wiki/ISO_8601#Time_offsets_from_UTC)。 'それはうまくいかないの? 'あなたのプログラムは現在どのような出力をしていますか、それがうまくいかないことをどのように検出しますか? – phihag

0

私は(首都タイムスタンプでS気づく - しばらくの間、私を投げた)DjangoはKMLタイムスタンプにオブジェクトを変換するために、Pythonでこれを使用する:

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' 
...