Web services 从GPS坐标和当地时间到UTC 0(祖鲁时间)

Web services 从GPS坐标和当地时间到UTC 0(祖鲁时间),web-services,time,gps,coordinates,utc,Web Services,Time,Gps,Coordinates,Utc,我有一个与本地时间戳关联的地理坐标。根据这些信息,我想获得当时该位置的UTC 0时间 例如,假设我有一个坐标指向罗马的一个地方,本地时间戳为2013年11月15日13:00。罗马11月的夏令时为UTC+1。因此,输出应为:2013年11月15日12:00 当然,接收坐标和本地时间戳并输出UTC 0时间的函数需要知道某个坐标指向哪个国家,并且还需要知道该国家的夏令时政策 你知道有没有这样的服务吗 谢谢这里有一些与地理部分相关的东西: 实际的计算部分应该是简单的本地时间戳+偏移量谷歌有一个可以做到

我有一个与本地时间戳关联的地理坐标。根据这些信息,我想获得当时该位置的UTC 0时间

例如,假设我有一个坐标指向罗马的一个地方,本地时间戳为2013年11月15日13:00。罗马11月的夏令时为UTC+1。因此,输出应为:2013年11月15日12:00

当然,接收坐标和本地时间戳并输出UTC 0时间的函数需要知道某个坐标指向哪个国家,并且还需要知道该国家的夏令时政策

你知道有没有这样的服务吗


谢谢

这里有一些与地理部分相关的东西:

实际的计算部分应该是简单的本地时间戳+偏移量

谷歌有一个可以做到这一点的工具。它获取位置和时间戳,并返回必须加在一起的rawOffset和dstOffset。然后您可以相应地修改时间戳以获得UTC时间

utcOffset = rawOffset + dstOffset
utcTimestamp = timestamp - utcOffset

当然,它需要UTC时间戳,因此,如果您靠近DST边界,结果可能仍会偏离一小时。

将坐标与本地时间戳关联始终是错误的;更好的方法是使用三种格式:坐标、UTC时间、国家/城市时区。如果您查找当前时间,则可以使用这些格式,但任意时间的偏移量可能相同,也可能不相同,这取决于DST是否处于活动状态。不幸的是,我没有找到更好的答案。我添加了一个带有谷歌API的答案,该API在请求中包含时间戳。