写国际化的程序比较难处理的两个问题可能是:时间问题 、 编码问题 。 本篇文章来聊一聊时间问题。 最近设备到了国外,时间不不准了~ 杂烩君一直在东八区写代码,处理时间问题时,习惯性的把时区写死为东八区,即设备的小时数总是基于GMT的小时数加上8个小时作为设备的小时数。 如果设备到了国外,设备的时间就不准了,设备的小时数对不上当地的小时数。我们的设备时间,是使用设备上GPS的授时时间给设备进行时间校准的。 设备从GPS拿到的时间数据只是UTC时间。所以,不同地区的时间,需要基于UTC时间+/-时区,向西减小,向东增加。当地的时区,可以根据当地的经度进行计算,这个后面再说。 下面我们先来了解一些概念:
|