2010-03-24 116 views
1

我通過Wunderground的XML API消費國際天氣預報:Wunderground和UTC偏移

http://wiki.wunderground.com/index.php/API_-_XML 

望着輸出喀布爾,阿富汗例如:

http://api.wunderground.com/auto/wui/geo/ForecastXML/index.xml?query=OAKB 

我注意到,沒有UTC偏移量。我能看到的最接近的是:

<tz_short>AFT</tz_short> 

標識當前TimeZone是AFT。我看到的問題是,沒有普遍接受的時區縮寫,所以我不能使用這些縮寫,並從C#的TimeZoneInfo對象中查找和偏移。

是否有Wunderground的時區縮寫/名稱/偏移列表,因此我可以將他們的時區映射到TimeZoneInfo對象,還是有更好的方法來獲取此信息?我需要使用TimeZoneInfo,以便我可以計算國際不同地點的夏令時。

回答

2

這裏是你可以做什麼來獲得UTC偏移的想法。

使用XML輸出中的epoch字段,該字段將在UNIX時間(自1970-01-01 00:00以來的秒數)。這次將在UTC/GMT。然後,通過轉換pretty字段的內容,或使用日/月/年/小時/分鐘/秒字段,確定發佈的本地時間與新紀元時間之間的差異。這會給你你的UTC抵消。還有一個isdst字段告訴你該區域是否正在兌現DST。

不幸的是,我不知道時區縮寫的完整列表,所以使用上面的方法來確定偏移量和DST可能是您的最佳選擇。祝你好運!

+0

優秀的解決方案。 – Brandon 2010-03-26 20:31:35

相關問題