go时间/时间戳操作大全(小结)
程序员文章站
2022-08-30 12:33:58
基本操作
01: 获取当前时间
datetime := time.now()
fmt.println(datetime)
02: 获取年 月 日 时...
基本操作
01: 获取当前时间
datetime := time.now() fmt.println(datetime)
02: 获取年 月 日 时 分 秒 纳秒
year := time.now().year() //年 fmt.println(year) month := time.now().month() //月 fmt.println(month) day := time.now().day() //日 fmt.println(day) hour := time.now().hour() //小时 fmt.println(hour) minute := time.now().minute() //分钟 fmt.println(minute) second := time.now().second() //秒 fmt.println(second) nanosecond := time.now().nanosecond() //纳秒 fmt.println(nanosecond)
03: 获取当前时间戳
timeunix := time.now().unix() //单位秒 timeunixnano := time.now().unixnano() //单位纳秒 fmt.println(timeunix) fmt.println(timeunixnano)
04: 将时间戳格式化
fmt.println(time.now().format("2006-01-02 15:04:05"))
05: 时间戳转为go格式的时间
var timeunix int64 = 1562555859 fmt.println(time.unix(timeunix,0)) // 之后可以用format 比如 fmt.println(time.unix(timeunix, 0).format("2006-01-02 15:04:05"))
06: str格式化时间转时间戳
t := time.date(2014, 1, 7, 5, 50, 4, 0, time.local).unix() fmt.println(t)
时间的计算
01: 获取今天0点0时0分的时间戳
currenttime := time.now() starttime := time.date(currenttime.year(), currenttime.month(), currenttime.day(), 0, 0, 0, 0, currenttime.location()) fmt.println(starttime) fmt.println(starttime.format("2006/01/02 15:04:05"))
02: 获取今天23:59:59秒的时间戳
currenttime := time.now() endtime := time.date(currenttime.year(), currenttime.month(), currenttime.day(), 23, 59, 59, 0, currenttime.location()) fmt.println(endtime) fmt.println(endtime.format("2006/01/02 15:04:05"))
03: 获取1分钟之前的时间
m, _ := time.parseduration("-1m") result := currenttime.add(m) fmt.println(result) fmt.println(result.format("2006/01/02 15:04:05"))
04: 获取1小时之前的时间
m, _ := time.parseduration("-1h") result := currenttime.add(m) fmt.println(result) fmt.println(result.format("2006/01/02 15:04:05"))
05: 获取1分钟之后的时间
m, _ := time.parseduration("1m") result := currenttime.add(m) fmt.println(result) fmt.println(result.format("2006/01/02 15:04:05"))
06: 获取1小时之后的时间
m, _ := time.parseduration("1h") result := currenttime.add(m) fmt.println(result) fmt.println(result.format("2006/01/02 15:04:05"))
07 :计算两个时间戳
aftertime, _ := time.parseduration("1h") result := currenttime.add(aftertime) beforetime, _ := time.parseduration("-1h") result2 := currenttime.add(beforetime) m := result.sub(result2) fmt.printf("%v 分钟 \n", m.minutes()) h := result.sub(result2) fmt.printf("%v小时 \n", h.hours()) d := result.sub(result2) fmt.printf("%v 天\n", d.hours()/24)
08: 判断一个时间是否在一个时间之后
stringtime, _ := time.parse("2006-01-02 15:04:05", "2019-12-12 12:00:00") beforeorafter := stringtime.after(time.now()) if true == beforeorafter { fmt.println("2019-12-12 12:00:00在当前时间之后!") } else { fmt.println("2019-12-12 12:00:00在当前时间之前!") }
09: 判断一个时间相比另外一个时间过去了多久
starttime := time.now() time.sleep(time.second * 5) fmt.println("离现在过去了:", time.since(starttime))
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
上一篇: go json数据转发的实现代码