Unix时间戳转换器:时间与日期互转
将Unix时间戳(秒或毫秒)转换为易读的UTC和本地日期,或将任意日期转换为纪元值。
粘贴时间戳,转换器会自动判断它是秒还是毫秒,然后显示ISO 8601字符串、UTC时间、本地时间以及距今多久。反向转换可将日历日期转换为纪元秒数和毫秒数。
Unix时间戳转换器:时间与日期互转
将Unix时间戳(秒或毫秒)转换为易读的UTC和本地日期,或将任意日期转换为纪元值。
时间戳 → 日期
日期 → 时间戳
工作原理:Unix时间表示自纪元1970-01-01T00:00:00Z以来经过的秒数,不计闰秒。毫秒就是相同计数×1000。
关于Unix时间戳转换器
Unix时间,也称纪元时间或POSIX时间,是大多数计算机记录时刻的方式:它表示自1970年1月1日UTC午夜以来经过的秒数,不计闰秒。这个数字易于存储、比较和相减,因此数据库列、API响应、JWT过期声明、日志、缓存标头、cron调度器和文件元数据中都很常见。本工具把人类难以理解的原始数字转换成清晰的日期。
粘贴时间戳后,工具会以四种方式显示同一时刻:带Z后缀的ISO 8601字符串、UTC日期时间、你所在时区并明确显示UTC偏移的本地时间,以及“几天前”或“几年后”这样的相对描述。由于系统对精度的使用不同,工具会根据数字位数自动判断单位:超过11位按毫秒处理,否则按秒处理;也可以手动指定单位。
反向转换同样实用。选择日期和时间后,工具会按浏览器本地时区解释,并返回纪元秒数和毫秒数。“现在”按钮可填入当前时刻。Unix时间与时区无关,负值表示1970年前的时刻;有符号32位秒计数会在2038年1月19日溢出。所有转换都在浏览器中完成,不会传输或保存输入内容。
时间戳转换示例
几个知名的纪元值及转换器显示的结果。
| 时间戳 | UTC日期 | 说明 |
|---|---|---|
| 1000000000 | 2001-09-09 01:46:40 (UTC) | 十亿秒里程碑——Unix时间在2001年9月跨过十亿秒。 |
| 1234567890 | 2009-02-13 23:31:30 (UTC) | 程序员在2009年庆祝的著名里程碑。 |
| 1712345678901 | 2024-04-05 19:34:38 (UTC) | 有13位数字,因此自动检测为毫秒。 |
| 2147483647 | 2038-01-19 03:14:07 (UTC) | 有符号32位最大值,即2038年问题发生的时刻。 |
如何转换Unix时间戳
- 将时间戳粘贴到字段中。保持自动检测即可(10位读作秒,13位读作毫秒),也可强制指定单位。
- 点击“转换”,查看ISO 8601字符串、UTC时间、带UTC偏移的本地时间和相对时间。
- 点击“现在”,自动填入当前时间戳。
- 反向转换时,在日期字段选择日期和时间,然后点击“转换为时间戳”获取秒和毫秒。
- 复制数据库查询、API调用或日志搜索所需的表示形式。
Unix时间戳常见问题
什么是Unix时间戳?
它是自1970年1月1日UTC午夜(Unix纪元)起经过的秒数,不计闰秒,是操作系统、数据库和API广泛使用的紧凑、与时区无关的时间表示。
如何区分秒和毫秒?
看长度:当前秒时间戳通常为10位,毫秒时间戳为13位。自动检测使用这一数量级判断;处理历史或遥远未来的值时,可用单位选择器覆盖判断。
Unix时间戳受时区影响吗?
不受影响。时间戳代表全球相同的绝对时刻;时区只影响日历显示,因此工具同时显示UTC和明确偏移的本地时间。
什么是2038年问题?
使用有符号32位整数存储Unix时间的系统,在2038年1月19日03:14:07 UTC后计数器溢出。现代软件使用64位整数或毫秒数来避免它。
时间戳可以为负数吗?
可以。负值表示1970年纪元以前的时刻,例如-86400表示1969年12月31日UTC午夜。秒和毫秒格式都支持负数。
日期转时间戳使用哪个时区?
所选日期和时间按浏览器本地时区解释,就像HTML表单一样。返回的秒和毫秒是绝对值,转回后本地时间会保持不变。