时间戳怎么读、怎么转(秒与毫秒)
数据库里存着 1757212200,日志里写着 1757212200000,接口文档说"返回 Unix 时间戳"。同一件事,两种长度——这就是排查时间问题时最常遇到的第一个岔口。
先看位数:10 位是秒,13 位是毫秒
时间戳记录的是"从 1970-01-01 00:00:00 UTC 起过了多少时间",只差单位:
- 10 位:以秒为单位,比如
1757212200; - 13 位:以毫秒为单位,比如
1757212200000(就是同一个瞬间 ×1000)。
两个长度差三位,肉眼扫一眼就能分辨;时间戳转换把两种都直接认,你只要粘贴,它会告诉你这是秒还是毫秒。
读一个时间戳(三步)
- 把数字粘进「时间戳」输入框(10 位秒或 13 位毫秒都行),点「解析」。
- 一次拿到四行结果:本地时间、UTC 时间、ISO 8601、相对时间(几小时前 / 几天前)。
- 对着日志里的顺序查:相对时间用来快速判断"这条日志是不是刚发生的",ISO 8601 用来粘给同事或记进工单。
反过来:日期转时间戳
把日期文本粘进第二个输入框——支持 2026-09-07 10:30:00 这样的常规写法,也支持 ISO 8601(如 2026-09-07T02:30:00Z)——点「转换」,同时得到毫秒与秒两个结果,按对方接口要的单位取用。
为什么换算出来总是差 8 小时
因为时间戳本身不带时区:它只表示一个瞬间。差 8 小时不是算错了,而是同一个瞬间的两种"读法":
- 工具里的「UTC 时间」是国际标准时间;
- 「本地时间」按你所在时区显示,国内就是 UTC+8,比 UTC 早 8 小时。
排查接口时间问题时记住两个约定:单位(秒还是毫秒)、时区(接口给的是 UTC 还是本地时间)。服务端按 UTC 存储、展示层转本地时区,是最常见的做法;两边不一致时就会出现"数据总是差 8 小时"。
常见问题
时间戳会"过期"吗
不会。它只是某一瞬间的编号,没有有效期。看到旧的时间戳说明那件事发生得早,不说明数据有问题。
2038 问题是什么
早期系统用 32 位存秒级时间戳,最多表示到 2038-01-19。现代系统普遍用 64 位、或直接使用毫秒;本工具按你给的数值解析,13 位毫秒不受 32 位上限影响。
能转农历、或指定"日本时间"这类时区吗
不能,这个工具只做"时间戳 ↔ UTC / 本地时间"的互转。农历、节气、跨时区换算属于日期时间工具箱的范围。
为什么乘以 1000 和直接解析结果一样
因为秒和毫秒只是同一瞬间的两种单位,值不同、指向的时刻完全相同。
睿工具