编码转换 · 更新于 2026-11-05 · 8 分钟阅读
秒、毫秒时间戳与时区怎么换算
Unix 时间戳表示相对 UTC 1970-01-01 的时间,不自带“北京时间”。同一时刻在不同时区显示不同日期,必须同时确认单位和显示时区。
操作步骤
1. 从接口说明确认单位
查看字段约定是 Unix 秒还是 Unix 毫秒。当前常见日期的秒值往往为 10 位、毫秒往往为 13 位,但历史日期、负数和远期日期不符合这个经验,不能只按位数判断。本站要求明确选择单位。
2. 用零点示例核对时区
输入 0 秒,UTC 模式应显示 1970-01-01 00:00:00.000,UTC+08:00 应显示同日 08:00:00.000。两个结果表示同一个时刻。若业务页面恰好差八小时,应检查时区解释,不能直接给所有时间戳加八小时。
3. 转换一个带毫秒的日期
输入 1735689600123 毫秒,UTC 结果为 2025-01-01 00:00:00.123,北京时间为 2025-01-01 08:00:00.123。结果同时列出秒、毫秒、时区和 UTC ISO 8601,便于对照接口与数据库日志。
4. 反向转换时给出完整日期
选择“日期转时间戳”,输入 YYYY-MM-DD HH:mm:ss,可附加 1 至 3 位毫秒,再明确选择 UTC 或 UTC+08:00。工具会拒绝不存在的日期,例如 2025-02-29,不会自动滚动到下个月。
5. 保留小数和负号
秒支持最多三位小数,毫秒要求整数。例如 -0.001 秒等于 -1 毫秒,是 UTC 1969-12-31 23:59:59.999,不是 1970 年之后的时间。工具支持的 UTC 年份为 0001 至 9999,超出范围会报错。
实例与预期结果
同一时刻在两个时区显示
输入值不变,只切换显示时区。
- 时间戳转日期
- 单位:毫秒
- 先 UTC,再 UTC+08:00
示例输入 / 准备
1735689600123
预期结果 / 核对项
UTC: 2025-01-01 00:00:00.123 UTC+08:00: 2025-01-01 08:00:00.123
反向输入北京时间日期并选择 UTC+08:00,应得到同一个毫秒值,不需要再手动加八小时。
不存在的日期应该报错
核对严格日期校验,而非自动修正日期。
- 日期转时间戳
- UTC
示例输入 / 准备
2025-02-29 12:00:00
预期结果 / 核对项
转换失败:2025 年不是闰年,不存在 2 月 29 日。
修正日期后重新转换;报错时不要继续使用上一次的成功结果。
遇到问题怎么办
日期落在 1970 年附近或非常遥远
可能原因:秒和毫秒单位可能选反。
处理方法:按接口定义选择单位,不仅凭位数猜测。
结果与电脑显示不同
可能原因:本工具使用明确选定的 UTC 或 UTC+08:00,而电脑可能处于其他时区。
处理方法:对照时区和 ISO 8601 输出,确认比较的是同一个时刻。
风险与限制
- 北京时间选项是固定 UTC+08:00,不提供世界各地的历史夏令时规则。
- 文件元数据里没有时区的设备时间,不能仅凭此工具确定绝对时刻。
- 时间戳可表示时刻,但不能证明业务事件或照片确实在该时刻发生。
常见问题
为什么秒和毫秒选错后日期很离谱?
两个单位相差 1000 倍。先核对接口约定,而不是根据工具结果是否看起来像今天来猜测。
时间戳本身需要加八小时吗?
通常不需要。相同时刻的 Unix 值不因显示时区变化;八小时差异通常在日期显示或无时区日期的解释环节产生。
能把没有时区的 EXIF 日期直接转成准确时间戳吗?
不能。必须有可靠时区信息。工具只能按你选定的时区换算,不会替照片补出未知的时区。