Unix时间戳转换
轻松实现时间戳与标准时间之间的双向转换,支持查看秒级与毫秒级当前时间戳,支持时区切换,自动识别格式,实时显示当前时间戳。
当前时间戳 (秒)
北京时间 (UTC+8)
时间戳(秒/毫秒)
日期格式
秒
批量转换
每行一个(自动检测)批量输入
批量输出
简介
时间戳,是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数(不考虑闰秒),用于表示一个时间点。 然而,这种格式对于人类阅读并不友好,因此需要转换成可读的日期和时间格式。 这个工具能够将时间戳快速转换为人类可读的日期时间格式,同时也支持反向转换,即将日期时间转换为时间戳。
北京时间
北京时间是中国的标准时间,通常表示为 UTC+8
夏令时
1986年至1991年,中华人民共和国在全国范围内实行了六年夏令时,每年从4月中旬的第一个星期日2时整(北京时间) 到9月中旬第一个星期日的凌晨2时整(北京夏令时)。除1986年因是实行夏令时的第一年,从5月4日开始到9月14日结束外, 其它年份均按规定的时段施行。夏令时实施期间,将时间向后调快一小时。1992年4月5日后不再实行。
JDK 的夏令时问题
夏令时的起止,是政令对日历描述的人为干预。每年均可能发生变化,JDK 如何感知这个规律并在系统上加以体现的? 方案是将所有变化,并配置在 JDK 中。详见:Timezone Data Versions in the JRE Software
不同版本下 Asia/Shanghai 时区夏令时起始时间不同,早期维护者认为中国标准时间的夏令时切换发生在0时, 而后来又经过证明发生在2时,新版本 JDK 及时修正了这个问题。
什么是Unix时间戳?
10位时间戳和13位时间戳有什么区别?
时区设置对转换结果有什么影响?
所有操作是在本地完成的吗?数据安全吗?
获取当前时间戳
| 语言 | 获取当前秒级时间戳 | 备注 |
|---|
JavaScript
Math.floor(Date.now() / 1000)Date.now() 返回毫秒,需除以 1000 取整Python
import timeint(time.time())最常用方式;返回 float,转 int 即可
Java
System.currentTimeMillis() / 1000LInstant.now().getEpochSecond();注意:
/ 1000L 避免整型溢出PHP
time()直接返回秒级时间戳,最简单
C#
DateTimeOffset.UtcNow.ToUnixTimeSeconds()建议封装成方法;注意 UTC 而非 LocalTime
Go
package mainimport "time"time.Now().Unix()原生支持,简洁高效
Ruby
Time.now.to_i自动截断小数部分,返回秒
Swift
Int(Date().timeIntervalSince1970)iOS/macOS 开发常用
Kotlin
System.currentTimeMillis() / 1000JVM 环境下与 Java 兼容
Shell
date +%s运维脚本神器,一行搞定
Rust
use std::time::{SystemTime, UNIX_EPOCH};SystemTime::now().duration_since(UNIX_EPOCH).unwrap().as_secs()安全高效,但需处理错误
SQL (MySQL)
SELECT UNIX_TIMESTAMP(NOW());UNIX_TIMESTAMP()直接获取当前时间的秒级时间戳