编码解码哈希加密格式化时间转换开发生成文本处理网络工具其他工具
首页 / 时间转换 / 时间戳转换

时间戳转换

时间戳和日期互转。

输入
结果

这个工具能做什么

Unix 时间戳和人能读的日期时间做双向转换:粘一串 1721664000 这样的数字,它给你 2024-07-22 22:40:00;反过来填好日期时间,它算出对应的时间戳。接口联调、翻日志、排查定时任务时,经常碰到时间戳这种「给机器看」的格式,肉眼根本认不出是哪天几点,一个个手算又容易错。这个时间戳转换工具就是省掉这段心算,时间戳转时间和时间转时间戳都支持,秒级和毫秒级会根据位数自动识别。

Unix 时间戳本质是从 1970-01-01 00:00:00 UTC(即 Unix 纪元 epoch)起流逝的秒数,它是一个不带时区的绝对时刻。10 位数字是秒级、13 位是毫秒级,工具按位数自动判断,毫秒会先除以 1000 再换算。要注意 timestamp 本身没有时区,同一个时间戳在东八区和 UTC 下显示的日期时间并不一样,转换时必须指定时区,页面默认按你本机时区展示。反向转换则是把你输入的年月日时分秒,结合时区还原成距 epoch 的秒差。整个换算都在浏览器里用 JavaScript 完成,本地处理不上传。

最常见的是接口联调:后端返回 {"created_at": 1721664000},前端或测试拿这串数字核对是不是自己刚提交的那条,贴进来一眼就能对上。看日志也一样,很多系统日志、埋点数据里的时间字段存的是毫秒时间戳,比如 1721664000123,复制过来转成可读时间,就能和用户反馈的「下午三点出问题」对齐排查。还有写 SQL 或造测试数据时,常需要反向把 2024-07-22 00:00:00 转成 unix 时间戳,填进 where 条件或 mock 数据里。

几个容易踩的坑:一是秒和毫秒别搞混,少三个零或多三个零会让结果差出一千倍,直接偏到 1970 年附近或很远的未来;二是时区,如果服务器按 UTC 存、你本地按东八区看,会差 8 小时,对不上先检查时区而不是怀疑数据错了;三是早于 1970 年的时间会是负数,32 位系统还有 2038 年溢出问题(2038-01-19 之后超出有符号 32 位整数上限)。另外 Unix 时间不计闰秒,和某些高精度授时会有极小差异,一般业务无需在意。

时间戳转换是一个免费的在线工具,打开网页就能用,不用下载也不用注册。平时大家搜的“时间戳转换”、“时间戳转时间”、“时间转时间戳”,说的都是这个。

常见使用场景

使用方法

  1. 把内容粘贴到输入框(生成类工具直接设置选项)。
  2. 按需要选择选项,点操作按钮。
  3. 结果出现在下方,点「复制结果」即可带走。

常见问题

怎么区分 10 位和 13 位时间戳?
10 位是秒级(到 2286 年之前都是 10 位),13 位是毫秒级,相当于在秒级末尾再加 3 位。本工具按位数自动识别,遇到毫秒会先除以 1000 再换算成日期时间。
为什么同一个时间戳,我这里转出来的时间和别人不一样?
多半是时区不同。时间戳是不带时区的绝对时刻,显示成日期时必须选定时区,本站默认用你本机时区,若对方按 UTC 展示,就会差一个固定的小时数。
支持毫秒、微秒、纳秒吗?
支持秒级和毫秒级两种,按位数自动识别。微秒(16 位)、纳秒(19 位)不在处理范围内,需要你先自行除到毫秒或秒,再放进来转换。
我输入的时间戳和日期会上传到服务器吗?
不会。换算全部在你的浏览器本地用 JavaScript 完成,输入的时间戳和日期不经过任何网络请求,也不会被保存。
为什么我转出来的时间是 1970 年?
一般是数字太小,被当成秒级算到了紧贴 epoch 起点。比如把 3600000 这种「毫秒时长」当成时间戳,按毫秒算就是 1970-01-01 01:00:00。确认你贴的是真正的时间戳而不是时长,并核对位数是 10 位还是 13 位。

相关工具

查看全部「时间转换」工具 →

相关名词解释