Unix 时间转换器

快速将 Unix 时间戳转换为可读的 UTC 日期,或将 ISO 8601 日期转换为纪元秒数,方便开发工作。

Unix 时间戳转换器
选择转换方向,在纪元秒数与 ISO 8601 UTC 日期之间换算。

关于 Unix 时间戳

Unix 时间用自协调世界时 1970 年 1 月 1 日 00:00:00 起经过的秒数表示某个时刻。这个起点称为 Unix 纪元。此格式紧凑、可排序且不依赖显示语言,因此广泛用于操作系统、数据库、API、日志文件、认证令牌和软件协议。时间戳为零表示纪元起点,946684800 则表示 UTC 时间 2000 年 1 月 1 日开始的时刻。 本转换器支持双向转换。在时间戳转日期模式下,由于 JavaScript 日期以毫秒存储,因此将输入的纪元秒数乘以 1,000,再将该时刻格式化为 ISO 8601 UTC 值。在日期转时间戳模式下,先解析 ISO 8601 日期,获取自纪元起的毫秒数,再除以 1,000 并向下取整到完整秒。输入末尾加上 Z 可明确指定 UTC,避免意外按计算机本地时区解释。 Unix 时间戳不包含时区标签。它表示一个绝对时刻,而同一时刻在不同地区可以显示为不同的钟表时间。只有在格式化或解释本地日期时,才需要考虑时区与夏令时规则。本工具显示 UTC,使结果在不同设备和地点保持一致。转换日期时,若来源是 UTC,请包含 Z;若不是 UTC,请提供明确的数字偏移,例如正 02:00。 多数现代系统使用有符号 64 位数值,可表示远超旧式 32 位 Unix 时间限制的日期。某些旧软件仍将时间戳存储在有符号 32 位字段中,当数值超过上限时便会遇到 2038 年问题。另一常见错误是混淆秒和毫秒:现代浏览器时间戳通常有 13 位,而当前 Unix 秒数通常有 10 位。输入前,请先将毫秒数除以 1,000。 可使用本转换器检查 API 响应、调试数据库记录、核对计划事件、转换日志条目和创建测试数据。日期解析遵循浏览器支持的 ISO 8601 约定。为确保含义明确,请提供完整的年、月、日、时间,以及 Z 或时区偏移。闰秒不会表示为独立的 Unix 秒,因此时间戳计算采用主流计算机系统惯用的连续计数方式。

Unix 时间转换示例

这些 UTC 示例可作为测试时间戳逻辑的参考。

输入转换后的值参考说明
01970-01-01T00:00:00.000ZUnix 纪元起点
9466848002000-01-01T00:00:00.000ZUTC 时间 2000 年开始
16094592002021-01-01T00:00:00.000ZUTC 时间 2021 年开始
2000-01-01T00:00:00Z946684800将 ISO 日期转换为纪元秒数

如何转换 Unix 时间

  1. 选择时间戳转日期,或日期转时间戳。
  2. 输入纪元秒数,或带时区标记的完整 ISO 8601 日期。
  3. 点击“转换时间”,计算对应值。
  4. 直接使用 UTC 结果,或按应用所需时区格式化该时刻。

Unix 时间转换常见问题

什么是 Unix 纪元?

Unix 纪元是 1970 年 1 月 1 日 00:00:00 UTC。Unix 时间戳表示相对于该参考时刻之前或之后的秒数。

Unix 时间戳总是 UTC 吗?

Unix 时间戳代表绝对时刻,本身不含时区。UTC 是描述纪元起点并显示无歧义结果时使用的标准参考。

如何区分秒和毫秒?

当前秒级 Unix 时间戳通常有 10 位,毫秒级通常有 13 位。用于秒级系统前,请先将毫秒值除以 1,000。

为什么 ISO 日期应包含 Z 或偏移量?

时区标记可明确所指的时刻。没有标记时,软件可能按设备本地时区解释相同钟表时间,从而返回不同时间戳。

什么是 2038 年问题?

有符号 32 位时间戳存储会在 2038 年 1 月达到上限。使用更宽整数类型的现代系统可避免这一特定限制,但旧系统可能仍需迁移。