一种表示约定,而不是新的历法

ISO 8601是国际标准化组织制定的日期与时间表示标准族,其英文题名为Date and time — Representations for information interchange,即“日期和时间:信息交换用表示法”。它解决的是不同系统怎样用字符表达日期、时刻和时间间隔,而不是重新规定地球运动、制定时区,或取代格里高利历。

以2019年版为基础,第1部分规定基本规则,范围包括格里高利历日期、24小时制时间及其组合,也涉及协调世界时与时间偏移的表示;第2部分提供扩展。官方目录截至2026年列有第1部分的2022年技术修正,以及第2部分的2025年修订。部分编号、年份与修订号共同说明采用哪个文本,不能只说“符合ISO”便忽略版本。

参考:[2] [3]

从年到日,减少阅读歧义

数字日期的歧义往往来自排列顺序。例如同一组月、日数字在不同地区可能被反向理解。ISO官方概述采用年—月—日的顺序,常见写法为YYYY-MM-DD。因此2026-10-23表示2026年10月23日,不需要猜测最前面的数字究竟是月份还是日期。

这类表示把较大的时间单位放在前面,便于人和软件共享解释。但外观整齐并不等于日期一定有效:月份长度、闰年等仍须依照历法判断。标准的基本范围也不是所有文化历法的统一编码,不能把一串符合年—月—日外观的农历数字直接当作格里高利历日期。

参考:[1] [2] [4]

时刻为什么需要偏移信息

只写日期和“上午九点”,往往不足以确定全球共同的一个时刻。以采用ISO 8601表示方式的互联网规范RFC 3339为例,2026-10-23T09:30:00+08:00与2026-10-23T01:30:00Z表示同一时刻:T分隔日期与时间,+08:00是当地时间减去UTC的差值,Z表示零偏移。这里的数值偏移不是一整套地域时区及夏令时规则。

RFC 3339是面向互联网时间戳的专门约束,不是ISO 8601的全部内容。它还说明,按字符串排序要得到时间顺序,需要统一偏移表示、字段形式和小数秒位数等条件。因此混用不同偏移的字符串,不能无条件按字典顺序比较先后;显示给人的地方时间与交换时使用的统一表示也可以分开处理。

参考:[1] [4]

从单个时刻扩展到时间范围

ISO官方概述把时间间隔和重复时间间隔列为适用对象。它们适合表达活动覆盖的时间范围或重复安排,而不仅是记录一次事件的时间戳。第2部分公开范围还包括不确定或近似日期、部分未指定的日期、扩展间隔、日期集合与选择,以及日期时间运算。不同含义需要不同表示,不能把未知日期的某个部分随意补成确定值。

公开概述足以说明标准的目的和适用范围,却不能替代具体版本的全部规范条款。实际接口仍应约定采用哪一部分、哪些形式和精度,以及如何处理不确定信息;把“日期格式一致”误当作业务含义、时区规则和时间范围解释已经全部一致,仍会留下互操作问题。

参考:[1] [3] [4]