以YY-mm-dd HH:MM:SS.9位 输出当前时间:
func main() {
fmt.Println(time.Now()) // 2019-11-15 16:26:12.4807588 +0800 CST
}
获取时间戳
func main() {
fmt.Println(time.Now().Unix()) // 十位 1593458838
fmt.Println(time.Now().UnixNano() / 1e6) // 毫秒 13位
fmt.Println(time.Now().UnixNano()) // 纳秒 19位
}
将一个当前时间格式化为指定格式, “2006-01-02 15:04:05” 是Go语言的创建时间,且必须为这几个准确的数字。
x := time.Now() // 2019-11-15 16:26:12.4807588 +0800 CST m=+1.877664801
fmt.Println(x.Format("2006-01-02 15:04:05")) // 2019-11-15 16:26:12, 参数:如果为24小时制,则 小时 需要大于12
fmt.Println(x.Format("2006-01-02")) // 2019-11-15
将时间戳格式化
datatime := time.Now().Unix() // 获取当前时间戳
x := time.Unix(datatime, 0) // 转成2019-11-15 16:26:12.4807588 +0800 CST 这种格式
datatimeStr := x.Format("2006-01-02 15:04:05") // 格式化成需要的格式:2019-11-15 16:45:52
datatimeStr := x.Format("2006010215") // 2019111515
任意格式时间日期转为时间戳
datetime := "2015-01-01" //待转化为时间戳的字符串
//日期转化为时间戳
timeLayout := "2006-01-02" //转化所需模板, 模板是随着datetime变化的
loc, _ := time.LoadLocation("Local") //获取时区
tmp, _ := time.ParseInLocation(timeLayout, datetime, loc)
timestamp := tmp.Unix() //转化为时间戳 类型是int64
fmt.Println(timestamp)
|
请发表评论