golang 时间操作常用api(Api)
- 转成普通的 yyyy-MM-dd 普通时间 没有像java那样的格式 要死记 总计 1234567
package main
import (
"fmt"
"time"
)
func main() {
nowTime := time.Now();
fmt.Printf("%v\n",nowTime)
fmt.Printf("%02d.%02d.%4d\n", nowTime.Year(), nowTime.Month(), nowTime.Year())
nowTimeStr :=nowTime.Format("2006-01-02 15:04:05")
fmt.Printf("%v\n",nowTimeStr)
addTime :=nowTime.Unix()+3600*24;
tm := time.Unix(addTime, 0)
fmt.Printf("addTime: %v\n",time.Unix(addTime, 0).Format("2006-01-02 15:04:05"))
isTrue := tm.After(nowTime)
fmt.Printf("%v\n",isTrue)
subTime :=tm.Sub(nowTime)
fmt.Printf("时间差毫秒 %v ,秒 %v\n",subTime.Milliseconds(),subTime.Seconds())
m, _ := time.ParseDuration("-10m")
nowTimeMin :=nowTime.Add(m)
fmt.Printf("nowTimeMin %v\n ",nowTimeMin)
tenAfter, _ :=time.ParseDuration("10m");
nowTimetenAfter :=nowTime.Add(tenAfter)
fmt.Printf("nowTimetenAfter %v\n ",nowTimetenAfter)
}
输出
GOROOT=D:\softinstall\GO_HOME #gosetup
GOPATH=C:\Users\HCP\go #gosetup
D:\softinstall\GO_HOME\bin\go.exe build -o C:\Users\HCP\AppData\Local\Temp\___1go_build_timeTest_go.exe D:\softinstall\GO\src\mygo\lcw\test\timeTest.go #gosetup
C:\Users\HCP\AppData\Local\Temp\___1go_build_timeTest_go.exe #gosetup
2021-05-31 15:56:20.9512013 +0800 CST m=+0.004222001
2021.05.2021
2021-05-31 15:56:20
addTime: 2021-06-01 15:56:20
true
时间差毫秒 86399048 ,秒 86399.0487987
nowTimeMin 2021-05-31 15:46:20.9512013 +0800 CST m=-599.995777999
nowTimetenAfter 2021-05-31 16:06:20.9512013 +0800 CST m=+600.004222001
Process finished with exit code 0