前言
最近開發項目經常用到go的time包, 照python的略微麻煩一些, 特別是那個layout被無數人吐槽(包括我), 這裏整理了一些常用的方法, 有需要的可以瞭解一下
package main
import (
"time"
"fmt"
)
func main() {
// time函數 layout 2006-01-02 15:04:05
//生成時間
time.Now()
time.Now().Unix()
//時間轉換 time.Format 根據更改layout轉成任何自己想要的格式化字段
time.Now().Format("2006-01-02")
time.Now().Format("200601")
//格式時間轉換爲time類型
a := "20190106"
b, _ := time.Parse("20060102", a)
fmt.Println(b.Unix())
//時間戳轉爲time類型
t := time.Unix(time.Now().Unix(), 0)
fmt.Println(t)
//time時間操作
tomrrow := time.Now().AddDate(0, 0, 1) //明天
time.Now().AddDate(0, -1, 0) //上月
//也可以是一段時間
fmt.Println(t.Add(time.Duration(10) * time.Minute))
//判斷時間前後
bol1 := t.After(tomrrow)
bol2 := t.Before(tomrrow)
fmt.Println(bol1, bol2)
//計算日期時間差 一般都是跟 Add方法一塊使用
fmt.Println(t.Sub(tomrrow))
}