日期和时间
package main
import (
"fmt"
"time"
)
func main() {
// 获取当前时间
current := time.Now()
// 格式化字符串输出
fmt.Println(current.String())
// Format函数格式化输出
// 无论要格式化什么时间,"2006-01-02 15:04:05"这几个数字固定不变
fmt.Println("MM-DD-YYYY: ", current.Format("01-02-2006"))
fmt.Println("hh:mm:ss MM-DD-YYYY:", current.Format("15:04:05 01-02-2006"))
fmt.Println("YYYY-DD-MM hh:mm:ss:", current.Format("2006-01-02 15:04:05"))
// 添加日期
// AddDate的三个参数依次为年、月、日
currentAddDate := current.AddDate(-1, 1, 0)
fmt.Println(currentAddDate)
// 添加时间
currentAdd := current.Add(10 * time.Minute)
fmt.Println(currentAdd)
// 获取时间差,利用Sub函数或者利用Add/AddDate函数增加负值
// Date函数参数:年-月-日-时-分-秒-纳秒
currentSub := current.Sub(time.Date(2000, 1, 1, 1, 1, 1, 0, time.UTC))
// currentSub :=currentAdd.Sub(current)
fmt.Println(currentSub)
// 从字符串解析时间
str := "2019-06-29T17:17:17.777Z"
layout := "2006-01-02T15:04:05.000Z"
t, err := time.Parse(layout, str)
if err != nil {
fmt.Println(err)
}
fmt.Println(t)
}