In Golang, we can set and calculate dates very conveniently. In this article we will introduce in detail how to use Golang to set dates.
1. Date formatting
In Golang, we use the time package to set and process time. It contains a large number of date formatting methods, allowing us to easily perform date and time processing. formatted output.
Before setting the date format, we need to master some common date formats:
Date format | Instructions |
---|---|
2006 | Year |
01 | Month |
02 | Date |
15 | hour |
04 | Minutes |
05 | Seconds |
package main import ( "fmt" "time" ) func main() { // 获取当前时间 now := time.Now() // 输出当前时间的年月日 fmt.Println(now.Format("2006-01-02")) // 输出当前时间的小时:分钟:秒 fmt.Println(now.Format("15:04:05")) // 输出当前时间的年月日小时:分钟:秒 fmt.Println(now.Format("2006-01-02 15:04:05")) // 输出当前时间的星期几,例如:星期一 fmt.Println(now.Weekday().String()) // 输出当前时间的月份,例如:1月 fmt.Println(now.Month().String()) }
2021-08-15 22:08:30 2021-08-15 22:08:30 Sunday August
package main import ( "fmt" "time" ) func main() { // 获取当前时间 now := time.Now() // 声明需要转换的时间字符串 str := "2021-08-16" // 将时间字符串转换为日期 t, err := time.Parse("2006-01-02", str) if err != nil { panic(err) } // 输出转换后的日期 fmt.Println(t) }
2021-08-16 00:00:00 +0000 UTC
package main import ( "fmt" "time" ) func main() { // 声明需要设置的年月日 year := 2021 month := time.January day := 16 // 获取当前时间 now := time.Now() // 构造需要设置的日期 t := time.Date(year, month, day, now.Hour(), now.Minute(), now.Second(), now.Nanosecond(), now.Location()) // 输出设置后的日期 fmt.Println(t) }
2021-01-16 22:19:22.610037702 +0800 CST m=+0.000105663
package main import ( "fmt" "time" ) func main() { // 获取当前时间 now := time.Now() // 计算3天前的时间 t := now.AddDate(0, 0, -3) // 输出计算后的日期 fmt.Println(t) }
2021-08-12 23:19:22.610037702 +0800 CST m=-259199.999894337
The above is the detailed content of golang set date. For more information, please follow other related articles on the PHP Chinese website!