时间戳转换工具
当前时间戳:
1703431491
时间戳转换为普通时间
普通时间转换为时间戳
什么是 Unix 时间戳?
Unix 时间戳(Unix 时间/POSIX 时间)是一种时间表示方式,是指从格林威治时间 1970 年 01 月 01 日 00 时 00 分 00 秒起至现在的总秒数。
不同语言获取当前时间戳的方法
Java
long epoch = System.currentTimeMillis()/1000
Python
import time
int(time.time())
Golang
import (
"time"
)
int32(time.Now().Unix())
PHP
time()
JavaScript
Math.floor(new Date().getTime() / 1000) // getTime() 返回的是毫秒
C#
epoch = (DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000
Ruby
Time.now
MySQL
SELECT unix_timestamp(now())
不同语言将时间字符串转为时间戳的方法
Java
long epoch = new java.text.SimpleDateFormat("yyyy/MM/dd HH:mm:ss").parse("2022/05/20 07:00:00").getTime() / 1000
Python
import time
str_time = '2022-05-20 07:00:00'
time_tuple = time.strptime(str_time, '%Y-%m-%d %H:%M:%S') # 先转换为时间元组
t3 = time.mktime(time_tuple) # 元组转换为时间戳
Golang
package main
import (
"log"
"time"
)
func main() {
t := int64(1653838019) //外部传入的时间戳(秒为单位),必须为int64类型
//时间转换的模板,golang里面只能是 "2006-01-02 15:04:05"
timeTemplate1 := "2006-01-02 15:04:05" //常规类型
timeTemplate2 := "2006/01/02 15:04:05" //其他类型
timeTemplate3 := "2006-01-02" //其他类型
timeTemplate4 := "15:04:05" //其他类型
// ======= 将时间戳格式化为日期字符串 =======
log.Println(time.Unix(t, 0).Format(timeTemplate1)) //输出:2022-05-29 23:26:59
log.Println(time.Unix(t, 0).Format(timeTemplate2)) //输出:2022/05/29 23:26:59
log.Println(time.Unix(t, 0).Format(timeTemplate3)) //输出:2022-05-29
log.Println(time.Unix(t, 0).Format(timeTemplate4)) //输出:23:26:59
}
PHP
stortotime("2022-05-20 07:00:00")
JavaScript
var date = new Date(时间戳)
C#
DateTime dt;
DateTimeFormatInfo dtFormat = new System.GlobalizationDateTimeFormatInfo();
dtFormat.ShortDatePattern = "yyyy/MM/dd";
dt = Convert.ToDateTime("2022/05/20", dtFormat); // 转换为 DateTime
Ruby
MySQL
SELECT unix_timestamp('2022-05-20 07:00:00');
不同语言将时间戳转为字符串的方法
Java
String date = new java.text.SimpleDateFormat("dd/MM/yyyy HH:mm:ss").format(new java.util.Date(Unix timestamp * 1000))
Python
import datetime
import time
dt = datetime.fromtimestamp(time.time())
dt.strftime('%Y-%m-%d %H:%M:%S')
Golang
package main
import (
"log"
"time"
)
func main() {
t := "2022-05-29 23:26:59" //外部传入的时间字符串
timeTemplate := "2006-01-02 15:04:05"
// ======= 将时间字符串转换为时间戳 =======
stamp, _ := time.ParseInLocation(timeTemplate, t, time.Local) //使用parseInLocation将字符串格式化返回本地时区时间
log.Println(stamp.Unix()) //输出:1653838019
}
PHP
date('Y-m-d H:i:s', time()) // 2022-05-20 07:00:00
JavaScript
var date = new Date(时间戳)
C#
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
long lTime = timeStamp * 10000;
TimeSpan toNow = new TimeSpan(lTime);
DateTime targetDt = dtStart.Add(toNow);
Ruby
MySQL
SELECT FROM_UNIXTIME(时间戳)