现在我有一种丑陋的方式从Go的time
包中获取ISO 8601本地时间字符串(我需要几毫秒的有效数字)。
t := time.Now()
now := fmt.Sprintf("%d-%02d-%02d %02d:%02d:%f",
t.Year(), t.Month(), t.Day(),
t.Hour(), t.Minute(),
float64(t.Second()) + float64(int(t.Nanosecond()/1E6))/1000)
fmt.Println(now)
我觉得这不是理想的做法,但我找不到一个简单的,内置的方式来做这个的例子。这种方式存在吗?
答案 0 :(得分:0)
使用t.Format("2006-01-02 15:04:05.000")
。
我假设如果秒小于10则缺少零是一个错误;如果您确实需要,请将05
更改为5
。如果您想要小数点后的更多或更少的数字,请在格式的末尾添加或删除零。