标准库-time包
time包
/* 用来输出时间和测量时间的作用 显示是公历 不是农历 */
关于时间的查询
1 package main 2 3 func main() { 4 5 /* 6 //查看当前的本地时间 7 nowtime := time.Now() 8 9 //年月日 10 year := nowtime.Year() //2019 11 month := nowtime.Month() //November 12 y,m,d := nowtime.Date() //2019 November 20 13 14 15 16 //周月年中的第几天 17 day :=nowtime.Day() //20 18 yearday :=nowtime.YearDay() //324 19 weekday :=nowtime.Weekday() //Wednesday 20 21 22 23 24 25 //当前时间的时分秒 26 fmt.Println(nowtime.Hour()) //时 17 27 fmt.Println(nowtime.Minute()) //分 25 28 fmt.Println(nowtime.Second()) //秒 50 29 fmt.Println(nowtime.Nanosecond()) //纳秒 306058200 30 31 32 33 34 //创建时间 35 // func Date(year int, month Month, day, hour, min, sec, nsec int, loc *Location) Time {} 36 data :=time.Date(2019,time.November,20,12,30,0,0,time.Now().Location()) 37 fmt.Println(data) //2019-11-20 12:30:00 +0800 CST 38 */ 39 40 41 42 43 }
时间的换算
1 package main 2 3 import ( 4 "fmt" 5 "time" 6 ) 7 8 func main() { 9 10 /* 11 add方法和sub方法是相反的 12 获取t0和t1的时间距离d是使用sub 13 将t0加d获取t1就是使用add方法 14 */ 15 16 now := time.Now() 17 18 19 //一天之前的时间 当天时间减去24小时是什么时候 20 //当前时间 叠加上 负一天 得到的是 一天之前的时间。 21 duration,_ := time.ParseDuration("-24h0m0s") 22 fmt.Println(now.Add(duration)) 23 24 25 //一周之前 26 fmt.Println(now.Add(duration*7)) 27 28 29 //一个月之前 30 fmt.Println(now.Add(duration*30)) 31 32 33 //计算时间差 34 //sub 作用是减去 当前时间 减去 昨天 等于 时间差 35 fmt.Println("时间差=",now.Sub(now.Add(duration))) //时间差= 24h0m0s 36 37 //当前时间与定义的时间的时间差是多少 38 fmt.Println("时间差=",now.Sub(time.Date(2000,time.December,30,0,0,0,0,time.Now().Location())) ) //时间差= 165593h48m59.9222722s 39 40 41 42 }