时间戳的比较

miomiora小于 1 分钟GoGo时间戳

起因是我需要往一个请求头中塞一个时间,并且还要用时间来比较当前的时间,起初

time.Now().String()
// 2023-03-07 16:06:22.6212138 +0800 CST m=+0.002775201

time.Now().GoString()
// time.Date(2023, time.March, 7, 16, 7, 30, 188558700, time.Local)

如果是这样的字符串形式那我另一头接收到必须得解析一遍

但实际上直接用time.Now().String()或者time.Now().GoString()的字符串丢给time.Parse()都会报错,也就是说自带的String类方法都不能直接解析回去😥

那我想用用自带的After()Before()的比较时间的方法就不行了😪

那为了方便就用时间戳来了time.Now().Unix()只需要另一头拿到时间戳的字符串,把他转成int64做比较即可

// 拿到当前的时间戳
start := time.Now().Unix()
start2 := strconv.FormatInt(start, 10)

time.Sleep(time.Second * 5)

// 拿到睡眠5秒后的时间戳
end := time.Now().Unix()
end2 := strconv.FormatInt(end, 10)

// 把时间戳字符串转换为int64
atoi, _ := strconv.ParseInt(start2, 10, 64)
atoi2, _ := strconv.ParseInt(end2, 10, 64)

// 结果均为 5
fmt.Println("1:  ", end-start)
fmt.Println("2:  ", atoi2-atoi)
上次编辑于:
贡献者: miomiora