Unix 时间戳转换工具

把 Unix 时间戳转换为日期时间,或把日期时间转换为时间戳。支持秒、毫秒、微秒、纳秒,ISO 8601 和 IANA 时区,也能正确处理 2038 年以后和 1970 年以前的负值。

  • 在浏览器内处理(不上传)
当前 Unix 时间—

Unix 时间 → 日期时间

可以输入 1970 年以前的负数,也可以输入小数(例:1700000000.5)。

结果

已根据位数识别为“秒”,如有误请选择单位。

ISO 8601(UTC)
2038-01-19T03:14:08Z
ISO 8601(带时差)
2038-01-19T03:14:08+00:00
HTTP 日期格式(RFC 9110)
Tue, 19 Jan 2038 03:14:08 GMT
Unix 秒
2147483648
Unix 毫秒
2147483648000
这个时间超出 32 位有符号整数 time_t 的范围(1901-12-13T20:45:52Z~2038-01-19T03:14:07Z),旧系统可能因“2038 年问题”而无法正确处理。

日期时间 → Unix 时间

结果

Unix 秒
2147483648
Unix 毫秒
2147483648000
ISO 8601(UTC)
2038-01-19T03:14:08Z
ISO 8601(带时差)
2038-01-19T03:14:08+00:00

使用方法

  1. 选择时区(默认为当前浏览器的时区)。
  2. 输入 Unix 时间。单位会根据位数自动识别,也可以手动选择秒、毫秒等。
  3. 页面会显示 ISO 8601(UTC 和带时差)、所选时区的日期时间,以及 Unix 秒和毫秒;下方可以从日期和时间反推 Unix 时间。

常见问题

如何区分秒和毫秒?

根据整数部分的位数判断:11 位以内为秒、14 位以内为毫秒、17 位以内为微秒,更多则为纳秒。像 12 位数的秒(公元 5138 年以后)会识别错误,请手动选择单位。

什么是 2038 年问题?

用 32 位有符号整数计算秒数的系统,无法表示 2038-01-19T03:14:07Z 的下一秒。本工具会正确换算超出范围的时间,并提示旧系统可能无法处理。

可以处理 1970 年以前的时间吗?

可以。请输入负数(例如 -1 表示 1969-12-31T23:59:59Z),带小数的负数也会向正确的方向取整。

有夏令时的地区怎么处理?

按照 IANA 时区规则计算。夏令时开始时不存在的时间会显示提示,结束时出现两次的时间可以选择使用哪一个。

注意事项与限制

  • 你输入的内容只在本页面处理,不会发送到 YUCTS 的服务器。
  • 可处理的范围与 JavaScript Date 相同:±8.64×10¹⁵ 毫秒(约公元前 271821 年至公元 275760 年)。毫秒以下的位数只用于显示和单位换算。
  • Unix 时间不计算闰秒,因此无法表示闰秒(23:59:60)。
  • 时区规则使用浏览器内置的 IANA 时区数据库,过去或未来的时间可能因浏览器版本不同而有差异。

数据来源