如果我通过纬度和经度,作为回应,我需要 GMT 时区值。
例如:
- 纬度:21.7679
- 经度:78.8718
- 响应除外:GMT+05:30
我不想使用任何网络服务。
如果您不想使用 Web 服务,则需要大量信息才能获得准确的结果。然而,有一个 hack 可以很容易地给出近似结果:
Divide longitude by 15
...每个时区理论上是 15 度宽,对应于平均太阳时一小时的差异。实际上,时区的形状发生了变化,以匹配内部和国际边界。格林威治子午线以东或以西每 15 度,民用时间分别向前和向后变化一小时。需要将经度(以度为单位)除以 15 以找到合适的时区(以小时为单位)。例如:
At 150 degrees west (or 150° W) longitude, the time should be 150 degrees divided by 15 degrees = 10 hours behind Coordinated Universal Time (UTC/GMT) (or UTC-10).
At 75 degrees east (or 75° E) longitude, the time would be 75 degrees divided by 15 degrees = 5 hours ahead of UTC/GMT (or UTC+5).