go--time包

格式化字符串 转 时间戳

////获取本地location
    toBeCharge := "2015-01-01 00:00:00"  //待转化为时间戳的字符串 注意 这里的小时和分钟还要秒必须写 因为是跟着模板走的 修改模板的话也可以不写
    timeLayout := "2006-01-02 15:04:05"  //转化所需模板
    loc, _ := time.LoadLocation("asia/shanghai")   //重要:获取时区
    theTime, _ := time.ParseInLocation(timeLayout, toBeCharge, loc) //使用模板在对应时区转化为time.time类型
    sr := theTime.Unix()         //转化为时间戳 类型是int64
    fmt.Println(theTime)         //打印输出theTime 2015-01-01 15:15:00 +0800 CST
    fmt.Println(sr)

时间戳 转 格式化字符串

// 时间戳转换成格式化字符串
timeLayout := "2006-01-02 15:04:05"  // Go语言时间转换的模版
t1 := time.Now().Unix()
ss := time.Unix(t1,0).Format(timeLayout)
fmt.Println(ss)

时间戳和time.time转换

now := time.Now()
fmt.Println(now)  //2018-09-18 20:27:58.129663936 +0800 CST m=+0.000428723
    
timestamp := now.Unix()
fmt.Println(timestamp) //1537273678
    
anotherNow := time.Unix(timestamp, 0)
fmt.Println(anotherNow) //2018-09-18 20:27:58 +0800 CST