Unix 时间戳转换
新在 Unix 时间戳与日期之间互转,含实时当前时间与 ISO 8601。
Paste any Unix timestamp (seconds or ms) or click Now — Discord renders these tags dynamically for every reader.
Runs entirely in your browser. Nothing is uploaded.
即时将 Unix 时间戳转换为日期——双向转换
这个 Unix 时间戳转换器可将任意 epoch 时间转换为人类可读的日期,也可将任意日期转换回时间戳,完全在您的浏览器中运行。实时计时器显示当前 Unix 时间(以秒和毫秒为单位),方便您随时复制最新的 epoch 值。无需注册,无服务器,不上传任何数据。
粘贴任意数字,工具会自动识别其单位:10 位为秒,13 位为毫秒,16–17 位为微秒,然后以本地时间、UTC、ISO 8601、RFC 2822 以及友好的相对格式(如"3 小时前")显示结果。每个输出都有一键复制按钮。
时间戳 → 日期 与 日期 → 时间戳
时间戳 → 日期面板接受任意正数或负数 Unix 时间戳。负数时间戳表示 1970 年之前的日期——Unix 时间戳 −86,400 对应 1969 年 12 月 31 日 00:00:00 UTC。您可以覆盖自动检测的单位,强制指定秒、毫秒或微秒。
日期 → 时间戳面板则反向工作:选择任意日期和时间,从完整的 IANA 时区列表中选择时区,即可获得该时刻对应的 Unix 秒和毫秒值。默认显示当前时间,方便您立即查看今天的 epoch 值。
Discord 时间戳标签——生成全部七种格式
Discord 使用 <t:1700000000:F> 这样的标签在聊天消息中渲染 Unix 时间戳,Discord 客户端会自动以每位读者的本地时区显示。七种格式代码为:t(短时间)、T(长时间)、d(短日期)、D(长日期)、f(短日期和时间——默认)、F(带星期几的长日期和时间)和 R(相对时间——"3 小时后"、"2 年前")。
大多数 Discord 时间戳生成器只能生成七种格式中的一两种。本工具一次性生成全部七种格式,并附带每种格式在您本地时区的预览,每个标签都有复制按钮。支持 iPhone、Android 和桌面端。
与 EpochConverter.com 和 unixtimestamp.com 的比较
EpochConverter.com 是该类别的领先工具——它能很好地处理秒和毫秒时间戳,速度也很快。但它不能自动检测单位(需要手动指定秒还是毫秒),没有 Discord 标签生成器,也不支持微秒。Unixtimestamp.com 更简单——仅支持秒,没有 Discord 输出,也没有相对时间。
本工具通过位数自动检测三种单位,生成全部七种 Discord 格式标签,显示相对时间,且完全在浏览器中运行,无需账号。对于需要在单一标签页中调试日志文件、API 响应和 Discord 机器人的开发者来说,这些功能的组合在上述网站上均不可用。
自动识别秒、毫秒和微秒
Unix 时间戳最常见的混淆来源是单位。秒时间戳如 1700000000 有 10 位,代表 2023 年 11 月的某个日期。同一时刻的毫秒时间戳为 1700000000000——13 位,是前者的一千倍。JavaScript 的 Date.now() 返回毫秒;Unix shell 命令 date +%s 返回秒。各种 API 和数据库的单位差异很大。
16 和 17 位时间戳代表微秒——用于高精度传感器数据、分布式追踪和某些 NoSQL 数据库。本转换器通过位数识别单位,每次都能正确转换。您也可以覆盖检测结果,强制指定特定单位。
Python、JavaScript 和 SQL 中的 Epoch 转换
在 Python 中,使用 datetime.fromtimestamp(ts, tz=timezone.utc) 获取 UTC 时间,或省略 tz 以服务器本地时区获取结果(在不同机器上会产生 bug)。当前秒时间戳为 int(time.time());毫秒时间戳为 int(time.time() * 1000)。在 JavaScript 中,new Date(ts * 1000) 将秒时间戳转换为 Date 对象;Date.now() 给出当前毫秒 epoch。
在 MySQL 中,UNIX_TIMESTAMP() 返回当前秒 epoch,FROM_UNIXTIME(ts) 将其转回日期时间。在 PostgreSQL 中,EXTRACT(EPOCH FROM timestamptz) 给出秒 epoch,TO_TIMESTAMP(ts) 反向转换。本工具处理开发者容易踩坑的边界情况:2038 年问题、1970 年之前的负时间戳,以及三种精度单位。
隐私保护、支持离线、即时响应
所有转换均在您的浏览器本地运行——没有服务器,不上传任何数据,不发出任何网络请求。页面加载完成后即使离线也能正常工作。收藏本页,下次在日志文件、API 响应、数据库记录或 JWT 载荷中遇到可疑整数时,可快速查看其代表的日期和时间。
Frequently asked questions
什么是 Unix 时间?
Unix 时间(也称为 epoch 时间或 POSIX 时间)是自 1970 年 1 月 1 日 00:00:00 UTC(Unix 纪元)起经过的秒数。例如,时间戳 1,700,000,000 对应 2023 年 11 月 14 日(星期六)22:13:20 UTC。它是一个与时区无关的整数,几乎在所有编程语言、数据库和 API 中都用于无歧义地表示时间点。
Unix 纪元是什么?
Unix 纪元是 Unix 时间的参考点:1970 年 1 月 1 日 UTC 午夜。每个 Unix 时间戳都从该时刻开始计数秒(或毫秒、微秒)。纪元之前的时间戳为负数——Unix 时间戳 −86,400 代表 1969 年 12 月 31 日 00:00:00 UTC。
秒时间戳和毫秒时间戳有什么区别?
秒精度的 Unix 时间戳通常有 10 位数字(2001 年至 2286 年之间),例如 1700000000。毫秒时间戳是秒时间戳乘以 1,000,有 13 位:1700000000000。JavaScript 的 Date.now() 返回毫秒;大多数服务器端语言默认返回秒。本转换器通过位数自动检测单位(10 位→秒,13 位→毫秒,16 位以上→微秒),也可手动强制指定。
如何生成 Discord 时间戳标签?
Discord 在消息中使用 <t:UNIX_SECONDS:格式代码> 语法渲染 Unix 时间戳。七种格式代码分别是:t(短时间)、T(长时间)、d(短日期)、D(长日期)、f(短日期/时间,默认)、F(带星期的长日期/时间)和 R(相对时间,如"2 年前")。本工具一次性生成全部七种格式,并附带预览。
16 或 17 位时间戳是什么?
16 和 17 位时间戳表示微秒(百万分之一秒),常见于高频交易系统、硬件传感器、Zipkin 和 Jaeger 等分布式追踪工具,以及 Cassandra 等某些数据库。16 位值如 1700000000000000 是秒时间戳乘以 1,000,000。本转换器能正确识别并转换微秒时间戳。
如何在 Python 中转换时间戳?
使用 datetime 模块。将 Unix 时间戳转换为 UTC:from datetime import datetime, timezone; dt = datetime.fromtimestamp(1700000000, tz=timezone.utc)。获取当前秒时间戳:import time; ts = int(time.time())。毫秒时间戳:ts_ms = int(time.time() * 1000)。务必传入 tz=timezone.utc 以避免因服务器本地时区不同导致的 bug。
什么是 2038 年问题?
2038 年 1 月 19 日 03:14:07 UTC,32 位有符号 Unix 时间戳将溢出——达到 2³¹ − 1(2,147,483,647)后回绕为大负数,导致日期被错误显示为 1901 年。使用 32 位整数存储时间戳的系统——旧版 Linux 内核、某些嵌入式固件、32 位构建的 MySQL——面临此风险。64 位时间戳则还需 2920 亿年才会溢出。
Related tools
查看全部工具宽高比计算器
锁定比例并求出新尺寸下缺失的宽度或高度。
数字转英文大写
用英文单词拼写任意数字,含支票用的货币模式。
时长计算器
计算两个时刻之间的时长,并累加多段时长。
时区转换器
比较各城市的时间,安排对所有人都合适的会议。
Currency Converter
Convert between 30+ world currencies with recent reference rates — fully in your browser.
Scientific Calculator
Full scientific calculator with trig, log, factorial, powers and memory functions.