1 回答
TA贡献1844条经验 获得超8个赞
您要求一个 RFC3339 格式的字符串,秒报告到最接近的毫秒。time 包中没有用于此的格式字符串(仅具有整秒和纳秒精度),但您可以自己制作。
这是从标准库复制的秒到最接近纳秒的字符串:
RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"
您可以通过删除.999999999(报告时间到最接近的纳秒,删除尾随零)到.000(报告时间到最接近的毫秒,不要删除尾随零)来轻松地制作一个毫秒版本。这种格式记录time.Layout在包文档https://pkg.go.dev/time#pkg-constants中:
RFC3339Milli = "2006-01-02T15:04:05.000Z07:00"
代码(游乐场链接):
package main
import (
"fmt"
"time"
)
const RFC3339Milli = "2006-01-02T15:04:05.000Z07:00"
func main() {
ms := int64(1645286399999) //My Local Time : Sat Feb 19 2022 23:59:59
var loc = time.FixedZone("UTC-4", -4*3600)
fmt.Println(time.UnixMilli(ms).In(loc).Format(RFC3339Milli))
}
输出:
2022-02-19T11:59:59.999-04:00
- 1 回答
- 0 关注
- 297 浏览
添加回答
举报