ToolConvoyToolConvoyv2.6

什么是 ISO 8601?

ISO 8601 是日期时间的国际标准文本格式。拆解你在 API、日志、文件名中实际遇到的"年、月、日、T、时区偏移"以及可省略的变体。

广告

什么是 ISO 8601?

ISO 8601 是规定如何把日期时间写成"无歧义文本"的国际标准。这是你的 API 应当接受的格式、数据库列应当存储的格式、日志应当输出的格式——任何其他写法,第一次跨国通话就会出现 YYYY-MM-DD 与 MM/DD/YYYY 的混战。

示例:

2026-08-27T14:35:00+09:00

拆成四部分:

部分 含义
2026-08-27 扩展格式的日期(年-月-日)。
T 日期和时间的字面分隔符。
14:35:00 24 小时制的时间(时-分-秒)。
+09:00 相对 UTC 的时区偏移。

为什么这个格式是系统层面的赢家

它作为文本是可直接排序的——字典序和时序一致。2026-08-27 排在 2026-08-28 前,2026-08-27T14:00:00Z 排在 2026-08-27T14:35:00Z 前。日志缓冲区用文本写出也能直接搜索和排序,不必解析。

它跨文化无歧义。01/02/2026 在美国是 1 月 2 日,在几乎所有其他地方是 2 月 1 日。2026-01-02 在任何地方都是 1 月 2 日。

它被广泛支持。主流语言的日期库都能解析;大多数默认输出 ISO 8601;所有 SQL 数据库都认识;所有现代文件格式都用它存时间戳。

实际工程里你会遇到的变体

不必每次都写全。ISO 8601 允许若干简写:

  • 2026 — 仅年
  • 2026-08 — 年和月
  • 2026-08-27 — 仅日期
  • 2026-08-27T14:35 — 日期加分钟时间
  • 2026-08-27T14:35:00 — 日期加秒时间
  • 2026-08-27T14:35:00.123 — 含毫秒
  • 2026-08-27T14:35:00Z — UTC 简写(Z 等价于 +00:00)
  • 2026-08-27T14:35:00+09:00 — 显式偏移

Z 形式(有时称为"祖鲁时间")是大多数系统在想要用 UTC 又不想带 :00 这种偏移尾巴时的输出。

常见坑

  • 夏令时。ISO 8601 存的是偏移,不是时区。2026-08-27T14:35:00+09:00 一旦你所在司法管辖区结束夏令时,就变模糊了。若你想表达"每天这个挂钟时间",请存时区标识符(Asia/Tokyo)而不是偏移。
  • 闰秒。ISO 8601 不编码闰秒。大多数民用系统忽略它。
  • 负年份。ISO 8601 延伸到过去用 -0001 表示公元前 2 年、0000 表示公元前 1 年。天文学界用另一种约定。
  • 没有偏移意味着本地。裸 2026-08-27 是一个日历日期,根本没有时间;给它加上时间却不附偏移,是未定义行为。

工具

要把 epoch 时间戳转 ISO 8601 字符串(以及反方向),用 Epoch to DateTime——浏览器内跑,无上传。

跨页面看时间和调度主题,见 Time and Cron hub。

另见

Related tools

Related hubs

广告