时间戳转换
Unix 时间戳与日期时间的相互转换
相关标签
时间戳转换
时间戳转换器
当前时间
💡示例说明
时间戳(秒)
1640995200 → 2022-01-01 00:00:00
时间戳(毫秒)
1640995200000 → 2022-01-01 00:00:00
将 Unix 时间戳与日期互相转换
Unix 时间戳记录从 1970 年 1 月 1 日 00:00:00 UTC 起经过的时间。本工具将数字时间戳转换为可读日期,也能将浏览器日期选择器中的时间转换为秒或毫秒。输入在浏览器本地处理。
秒还是毫秒?
现代日期的 Unix 时间戳通常以 10 位数字表示秒、13 位数字表示毫秒。工具根据数值大小推断单位;将秒乘以 1000,即可得到对应的毫秒值。
| 输入 | 单位 | UTC 时区下的 ISO 8601 结果 |
|---|---|---|
| 1640995200 | 秒 | 2022-01-01T00:00:00.000Z |
| 1640995200000 | 毫秒 | 2022-01-01T00:00:00.000Z |
| 1672531200 | 秒 | 2023-01-01T00:00:00.000Z |
示例统一采用 UTC,避免受电脑时区影响。当前规则将小于 1,000,000,000,000 的值当作秒,大于或等于该值时当作毫秒;时间戳转日期的结果范围为 Unix 起点至 2100-01-01T00:00:00.000Z,包含边界。较早的毫秒值,例如表示 UTC 2000 年初的 946684800000,应先除以 1000,输入 946684800 秒;否则它会被当作秒并因超过上限而被拒绝。
使用步骤
时间戳转日期
- 输入数字时间戳,或使用当前时间按钮。
- 选择可读格式、ISO 8601 或 YYYY-MM-DD HH:mm:ss 格式。
- 可读格式和自定义格式可选择本地时间或 UTC。
- 执行转换,核对结果后复制。
ISO 输出始终使用 UTC,并以 Z 结尾;切换本地时间和 UTC 不会改变 ISO 输出。
日期转时间戳
- 在日期时间输入框中选择日期与时间。
- 为结果选择秒或毫秒。
- 执行转换并复制数字结果。
日期时间输入框按浏览器的本地时区解释。核对 API 事件时,请确认原始日期和您选择的本地时间代表同一个时刻。
本地时间与 UTC 的区别
时间戳确定一个时刻,时区决定这个时刻如何显示。例如,1640995200 对应 UTC 的 2022 年 1 月 1 日零点,也对应 UTC+08:00 时区当天的上午 8 点。
实时时钟同时显示当前秒、毫秒、本地时间和 ISO 时间。本地时区与夏令时规则由浏览器提供。
常见错误与排查
- 结果日期与预期相差很大:确认来源使用秒还是毫秒,并核对自动单位识别规则是否适合该数值。
- 结果相差几个小时:检查 UTC 与本地时区;没有时区偏移的日期时间输入会按本地时间解释。
- 输入被拒绝:请使用工具支持范围内的非负数字时间戳;时间戳转日期不接受 Unix 起点之前的时间。
- 闰秒处理:本工具使用 JavaScript Date,不提供独立的闰秒表示。
处理 API 数据与日志
可以先用 JSON 格式化工具检查含 created_at 字段的接口响应,或用 CSV 预览工具查看导出表格中的时间戳列。比较两段日志的变化时,可以使用文本对比工具。
常见问题
切换时区会改变时间戳吗?
不会。同一个时刻对应相同的 Unix 数值。但输入相同钟点的本地日期和 UTC 日期,可能表示不同的时刻。
秒和毫秒可以直接混用吗?
不能。以上示例中,秒值乘以 1000 才是对应的毫秒值;毫秒值除以 1000 才是秒值。
输入会上传吗?
不会。内置转换器在浏览器中处理输入。这不代表 ToolsVault 中链接的外部网站采用相同的数据处理方式。
零值、负值与本地日期输入
在 UTC 下,0 秒对应 1970-01-01T00:00:00.000Z,-1 秒对应 1969-12-31T23:59:59.000Z。负 Unix 值在概念上表示起点之前的时刻,但本工具的“时间戳转日期”输入目前会拒绝负数,并提示数值过小。这里的负数示例用于解释约定,不表示这一方向接受该输入。
本地日期时间输入框不包含时区后缀,浏览器会按本地时区解释,再转换为时间戳。夏令时切换可能让部分本地时间重复或不存在;跨地区核对事件时,建议同时查看明确的 UTC 结果。超过浏览器支持日期范围的数字也可能转换失败,不能只凭数字外观判断有效。
转换区下方的“填入示例”可载入秒时间戳,并切回时间戳转日期页签;填入后仍需点击转换按钮生成结果。