前要:好记性不如烂笔头
目标一:时间戳转时间格式
过程:时间戳=>Time, Time=>需要的时间格式
timestamp := time.Now().Unix() fmt.Println("打印timestamp:", timestamp) tm := time.Unix(timestamp, 0) // 时间戳到时间格式 fmt.Println(tm.Format("2006-01-02 03:04:05 PM")) //12小时制 fmt.Println(tm.Format("02/01/2006 15:04:05 PM")) //24小时制 目标二:时间格式到时间戳的转换
过程:需要的时间格式=>Time,Time=>时间戳
standTime := tm.Format("2006-01-02 15:04:05 PM") //time是一个Time格式,查看目标一 loc, _ := time.LoadLocation("Local") //获取时区是非常重要的一步操作,否则你的时间将多8个小时 times, err := time.ParseInLocation("2006-01-02 15:04:05 PM", standTime, loc) if err != nil { fmt.Println("err:", err) return } trantimestamp := times.Unix() fmt.Println("标准时间格式到时间戳的转换:", trantimestamp) 目标三:判断一个时间点是否在一个时间点之后
过程:这个对于时间戳而言非常简单,但是对于其他的需要转换到time即可对比
stringToTime, _ := time.Parse("2006-01-02 15:04:05", "2017-12-12 12:00:00") beforeOrAfter := stringToTime.After(time.Now()) if beforeOrAfter == true { fmt.Println("2017-12-12 12:00:00在tNow之后!") } else { fmt.Println("2017-12-12 12:00:00在tNow之前!") } 目标四:判断一个时间相比另外一个时间点过去了多久
过程:这个是用Time的方式来对比
beginTime :=time.Now() time.Sleep(time.Second*1) durtime:= time.Since(beginTime) fmt.Println("离现在过去了:",durtime) 有疑问加站长微信联系(非本文作者)
