1、我們在使用go語言時間和 日期類型時,需要導入time包,導包方法,我就不多說了哈。
在go語言中,我們會使用time.Time 類型,用來表示時間。
獲取當前時間,now:= time.Now()
package main
import (
"fmt"
"time"
)
func main() {
now_time:= time.Now()
fmt.Println(now_time)
}
得到如下結果
2020-07-05 12:04:21.3247109 +0800 CST m=+0.004010401
使用下面的方法,可以獲取到當前時間的一些屬性
time.Now().year(), 獲取當前時間年
time.Now().Month(),獲取當前時間月份
time.Now().Day(),獲取當前時間日期天
time.Now().Hour(),獲取當前小時時間
time.Now().Minute(),獲取當前時間分鐘時間
package main
import (
"fmt"
"time"
)
func main() {
now_time:= time.Now()
fmt.Println(now_time)
fmt.Println(now_time.Year())
fmt.Println(now_time.Month())
fmt.Println(now_time.Day())
fmt.Println(now_time.Hour())
fmt.Println(now_time.Minute())
}
結果:
2020-07-05 12:10:58.6773158 +0800 CST m=+0.006015301
2020
July
5
12
10
time.Duration 用來表示納秒
時間格式化問題:
這裏特殊說明一下,在go語言中,時間格式化轉換,必須使用go語言誕生時間來進行轉換,不然轉換出來的日期是不正確的。
Go語言誕生時間:2006/01/02 15:04:05
例子:
package main
import (
"fmt"
"time"
)
func main() {
now_time:= time.Now()
fmt.Println(now_time.Format("02/1/2006 15:04"))
fmt.Println(now_time.Format("02/1/2006"))
fmt.Println(now_time.Format("2006/1/02 15:04"))
}
結果如下:
05/7/2020 12:23
05/7/2020
2020/7/05 12:23
可以看到上面的結果,是我們通過go語言誕生日期轉換出的當前時間。那麼我們修改一下,go語言的誕生時間,看看,轉換出來後是什麼樣子
錯誤案例
################################################################################################
package main
import (
"fmt"
"time"
)
func main() {
now_time:= time.Now()
fmt.Println(now_time.Format("02/1/2007 15:04"))
fmt.Println(now_time.Format("02/5/2006"))
fmt.Println(now_time.Format("2006/1/02 17:04"))
}
結果如下:
05/7/5007 12:25
05/35/2020
2020/7/05 77:25
可以看到,結果全部是錯誤了。這裏是需要注意的地方。
##############################################################################################