回答
有一个Web服务,您可以使用城市或经度和纬度来获取时区:
这不是一个真正的全时区IMO。这是当前UTC的偏移量 - 这意味着你不知道DST什么时候会改变等。这是一个耻辱,它不能给出奥尔森的名字。 – 2010-04-06 07:13:11
确实如此,但响应确实包括当地时间(考虑夏令时,如果有效),UTC时间,以及夏时制是否生效 - 可能足以满足多种用途。举个例子: http://www.earthtools.org/timezone-1.1/57.09/02.05 – Cocowalla 2010-04-06 07:23:00
这并没有考虑到DST欧洲以外的,所以它基本上是毫无价值的。 – 2012-05-08 22:01:59
你可以从系统时区列表并将其与城市名称:
http://msdn.microsoft.com/en-us/library/bb397781.aspx
这是脆弱的。
另外也有少数网络服务在那里,你可以使用,通过它长/ lat和它给你的时区,但是这意味着你是拴在第三部分Web服务。
如果你想运行自己的服务,而不是依赖于Web服务,你可以试用http://askgeo.com,它出售一个Java库,给出给定经纬度的时区ID。 – 2012-05-08 22:06:53
我敢肯定,这个代码可以简化,但这个工作对我来说,得到时区ID和名称。
Private Sub checkTZ()
Dim wc As WebClient = New WebClient()
Dim str As String = Nothing
Dim latPattern As String = "\bLatitude.*\<{1}"
Dim latRegSearch As Regex = New Regex(latPattern)
Dim lat As String = Nothing
Dim lonPattern As String = "\bLongitude.*\<{1}"
Dim lonRegSearch As Regex = New Regex(lonPattern)
Dim lon As String = Nothing
Try
str = wc.DownloadString("http://www.ipinfodb.com/my_ip_location.php")
lat = latRegSearch.Match(str).Value
lon = lonRegSearch.Match(str).Value
Catch ex As Exception
str = "Not Found"
End Try
Dim pattern As String = "\<|\s|\:|\bLatitude|\bLongitude"
Dim rgx As New Regex(pattern)
lat = rgx.Replace(lat, "")
lon = rgx.Replace(lon, "")
Dim firefoxEpochDate As Date = "1/1/1970"
Dim s_CurrentGoogleAPI As Long = DateDiff(DateInterval.Second, firefoxEpochDate, DateTime.UtcNow)
Dim xmldoc As XmlDocument = New XmlDocument()
Dim results2 As String = wc.DownloadString("https://maps.googleapis.com/maps/api/timezone/xml?location=" & lat & "," & lon & "×tamp=" & s_CurrentGoogleAPI)
xmldoc.LoadXml(results2)
Dim tz_offset_hours As Double = (Convert.ToDouble(xmldoc.DocumentElement.Item("raw_offset").InnerText) + Convert.ToDouble(xmldoc.DocumentElement.Item("dst_offset").InnerText))/3600
End Sub
- 1. 过滤城市的经纬度与其他城市的距离(经纬度)?
- 2. 纬度和经度放置在.NET中的名称或城市
- 3. 如何转换经度和纬度到国家或城市?
- 4. 从城市名称获取经纬度
- 5. 如何获取城市的经纬度?
- 6. 从经纬度获取城市名称
- 7. 使用经度和纬度查找城市和州名称
- 8. 如何从经度和纬度找到城市?
- 9. 如何从经度和纬度得到城市名称?
- 10. 如何根据纬度和经度获取城市?
- 11. 获取特定城市的纬度和经度android
- 12. 想要使用城市的经度和纬度来表示我们城市的城市
- 13. 如何使用纬度和经度获取位置名称或城市?
- 14. 获取基于城市,邮编或街道名称的经度和纬度
- 15. WebService或任何返回城市经纬度的RSS源
- 16. Android经纬度与GPS或城市名称
- 17. Javascript:使用纬度/经度查找城市?
- 18. IP到国家,城市,纬度,经度javascript服务
- 19. 免费城市/州/邮编到纬度/经度数据库?
- 20. 是否可以从经度/纬度获取城市?
- 21. 城市通过GPS位置纬度/经度
- 22. 如何经度阅读国家城市纬度的地图API
- 23. 查找与经度/纬度最接近的城市
- 24. 如何从城市名称获取经度,纬度android代码
- 25. 如何通过android中的经度和纬度查找城市温度?
- 26. 检查一个城市是在一个东北经纬度和西南纬度/经度国家
- 27. 从Google表格的经纬度获取城市,州和国家
- 28. 从经纬度得到国家,地区和城市名称(PHP)
- 29. 经纬度和时区的主要城市名单
- 30. OSM - 提取街道名称,经纬度和城市
这可能帮助:http://stackoverflow.com/questions/41504/timezone-lookup-from-latitude-longitude – 2010-04-06 07:06:04