程序人生 - 为何没有 Asia/Beijing 时区?

简介: 程序人生 - 为何没有 Asia/Beijing 时区?

Asia/Beijing 这个时区是消失了么?

@tinyfool 对啊,我就奇怪为什么北京时间就要用上海和重庆……

@tinyfool @CatChen我所疑惑的就是为什么不统一一下呢,很容易产生困惑噢~

 

开发者都知道

想必做开发的,尤其是PHP或Java的,很多年前就都会注意到这个情况:时区中没有asia/beijing,只有asia/shanghai和asia/chongqing。以前看到不少这种抱怨的帖子,毕竟和心理预期不一样,还会导致程序出错或程序员浪费时间调试。大家会猜测这是不是老外故意和北京捣乱。我认为不是。

 

投诉BUG

有国人愤而投诉Ubuntu

for i'm from P.R.China and BeiJing is our capital city, we are always using BeiJing time zone. please fix it.

甚至投诉Sun说“The Time Zone id name for PRC is wrong”:it is better if there exists a id name as "Asia/Beijing" for PRC.

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

Sun的回答是“It is not wrong”。对他给出的理由,还是有说服力的:

首先,我想确这一点,在JDK诞生之前,国际标准时区就没有Asia/Beijing,只有Asia/Shanghai或Asia/Chongqing?(One thing I want to be confirmed here is, before JDK's birth, the international standard TimeZone name for PRC is Asia/Shanghai or Asia/Irkutsk? not Asia/Beijing?)

其次,在1986年到1991年期间,中华人民共和国采用了夏时制。为了能够处理任何给定的时间格式,时区就需要知道是否历史上使用夏令时。daylight就是表明这一点的字段。因此,在JDK中使用daylight字段是不对的。

但根据他后面说的,我认为sun似乎有必要更改时区,毕竟sun认为时区的api应该支持同时代的时区。Asia/Shanghai和Asia/Chongqing代表中国,都是国民党时期的老黄历了:

sun的策略是只支持同时代(contemporary)的时区,而不是历史上(historical)的某一个时区。TimeZone和DateFormat code只应该对于当前的时区工作。最后,Fixed in JDK1.2 FCS-M, but the value is Asia/Shanghai, better one is Asia/Beijing.

 

小结

Anyway,有没有asia/beijing时区,开发都没影响,保持各种系统和软件的兼容可能更重要吧。谁知道更多呢?请留言。

目录
相关文章
|
传感器 监控 安全
无线传感器网络与物联网的融合:未来智慧生活的关键
在信息技术不断发展的时代,无线传感器网络和物联网技术正成为推动智能化进程的重要支撑。本文将介绍无线传感器网络和物联网的基本概念,并探讨了它们融合应用在各个领域的前景和意义。从智能家居、智慧城市到工业制造,无线传感器网络与物联网的结合正引领着我们走向更智慧、便捷的未来。
911 0
|
传感器 人工智能 自动驾驶
构建未来:利用AI技术优化城市交通系统
【4月更文挑战第27天】 随着城市化的快速发展,交通拥堵已成为全球城市的普遍问题。本文探讨了人工智能(AI)技术在缓解城市交通压力、提升交通效率方面的应用前景。通过分析智能信号控制、交通流量预测、自动驾驶车辆以及公共交通优化等关键技术的实际案例,评估了AI在现代交通系统中的潜力与挑战。本研究不仅展示了AI技术在改善城市交通中的有效性,同时也指出了实施过程中需要克服的技术和社会障碍。
|
8月前
|
数据采集 人工智能 JSON
Crawl4AI:为大语言模型打造的开源网页数据采集工具
随着大语言模型(LLMs)的快速发展,高质量数据成为智能系统的关键基础。**Crawl4AI**是一款专为LLMs设计的开源网页爬取工具,可高效提取并结构化处理网页数据,突破传统API限制,支持JSON、HTML或Markdown等格式输出。
621 3
Crawl4AI:为大语言模型打造的开源网页数据采集工具
|
6月前
|
数据管理 数据挖掘 API
深入研究:shopee商品列表API接口指南
Shopee 是东南亚和中国台湾地区的跨境电商平台,其开放平台(Shopee Open API)为开发者提供商品数据、店铺管理和订单处理等接口。商品列表 API 为核心功能之一,支持按店铺获取商品列表和搜索平台商品。通过 shop_id 等参数可获取指定店铺商品信息,支持分页与状态筛选;通过关键词、类目 ID 和价格范围等条件可搜索平台商品,适用于构建比价工具和选品分析系统。
|
域名解析 Linux 网络安全
Apache配置虚拟主机----基于域名的虚拟主机技术
Apache配置虚拟主机----基于域名的虚拟主机技术
529 0
remote: HTTP Basic: Access denied. The provided password or token is incorrect or your account has 2
remote: HTTP Basic: Access denied. The provided password or token is incorrect or your account has 2
5187 0
|
存储 Kubernetes 调度
如何驱逐某个节点上到某些名称空间的pod到其他节点
在 Kubernetes (k8s) 中,驱逐某个节点上特定命名空间的 Pod 到其他节点可以通过以下步骤实现: ### 步骤一:找到要驱逐的 Pod 首先,你需要找到位于特定命名空间并且运行在目标节点上的 Pod。你可以使用 `kubectl get pods` 命令并指定 `-o wide` 和 `--namespace` 参数来获取这些信息。 ```bash kubectl get pods -o wide --namespace=<your-namespace> ``` 此命令将返回指定命名空间中的所有 Pod,并显示它们的详细信息,包括所在的节点名称。 ### 步骤二:标记
1054 4
|
12月前
|
人工智能 vr&ar
GeneMAN:上海AI Lab联合北大等高校推出的3D人体模型创建框架
GeneMAN是由上海AI实验室、北京大学、南洋理工大学和上海交通大学联合推出的3D人体模型创建框架。该框架能够从单张图片中生成高保真度的3D人体模型,适用于多种应用场景,如虚拟试衣、游戏和娱乐、增强现实和虚拟现实等。
509 7
GeneMAN:上海AI Lab联合北大等高校推出的3D人体模型创建框架
|
Java Spring
如何通过IDEA查看注解逻辑实现
如何通过IDEA查看注解逻辑实现
1362 0