为什么没有 Asia/Beijing 北京时区

前言

众所周知中国目前有6个时区

Asia/Chongqing
Asia/Shanghai
Asia/Urumqi
Asia/Macao
Asia/Hong_Kong
Asia/Taipei

在软件开发过程中,开发者经常需要把时区调整为中国时区 Asia/Shanghai Asia/Chongqing

我们口中常说的北京时间,却唯独没有列在其中,我想很多开发者和我一样有此困惑

在此之前,有国内开发者向 Ubuntu 提交了一个Bug:no Asia/BeiJing option in TimeZone

Ubuntu 则认为:首先这个问题不归他。其次维护这个将会是易错的,而且容易与其他软件不兼容。

无独有偶,也有开发者向 Sun 公司提出 JDK-4141080 : The Time Zone id name for PRC is wrong

为什么会这样?

引用程序员经常对测试员说的一句话 “这可能是个历史遗留问题” 来解释这个事情

我们先来看看历史

1902年(清光绪二十八年),清朝海关曾制定海岸时,以东经120度之时刻为标准。

1912年中华民国建立后,位于北京的中央观象台将全国分为五个时区。

1939年3月9日,中华民国内政部召集标准时间会议,确认1912年划分之时区为中国标准时区,分别为:

  • 昆仑时区 GMT+5.5 新疆西部与部分西藏
  • 新藏时区 GMT+6 新疆及西藏
  • 陇蜀时区 GMT+7 中国中部
  • 中原标准时区 GMT+8 中国海岸
  • 长白时区 GMT+8.5 中国东北

1949年10月1日,中华人民共和国成立,UTC+8 时区正式命名为“北京时间”(与原中原标准时间相同)

那为什么没有新增 Asia/Beijing 时区?从国际标准本身的角度来看,北京和上海处于同一时区,只能保留一个。

这大概就是为什么没有 Asia/Beijing 北京时区的原因,你学到了吗?

参考地址
wiki百科

我来吐槽

*

*

已有 24 条评论

  1. 狗

    评论头像咋整的

    1. Hoe

      优先显示QQ头像,其次gravatar全球通用头像

  2. 威言威语

    当年我也很好奇北京时间为什么不显示北京而显示上海。

  3. 席小欢

    看到你的网站,觉得很不错,希望能与你互相友情链接…我的网站:建站知道网-http://wozhidaole.com.cn/ 如果同意的话,回复后互相上链接!

    1. Hoe

      🙂暂不交换友链了,感谢支持

  4. 泽泽

    😆才知道中国不同地区也有时差

    1. Hoe

      北京和上海处于同一时区,然后以不变应万变,没有增加北京时区,保持不变

  5. Hsiao

    很有趣的一篇文章。
    关于文中提到的向 Sun 公司提交 bug 一事,进去看了一下居然已经是 1998 年的事情了。不过当时主要的问题在于中国的时区编号被错误地标为“Asia/Irkutsk”(俄罗斯城市),而后改为了“Asia/Shanghai”。
    在原文的最后写到,“Fixed in JDK1.2 FCS-M, but the value is Asia/Shanghai, better one is Asia/Beijing.” 尽管修复了此bug,但是还是没有改为北京(笑)
    英文水平有限,如有纰漏欢迎指正qwq

    1. Hoe

      牛人一个👍

  6. 而特

    我来看看

  7. 青找

    我只记得一个上海时区