基本上我有几次都是这样一个作为一个字符串:如何将毫秒(hh:mm:ss.xxx)的字符串时间转换为time.Time?
15:56:36.113
我想将其转换为time.Time
。
从我正在阅读的内容中,使用time.Parse()
时不能使用毫秒。
是否有另一种方法将我的字符串转换为time.Time
?
基本上我有几次都是这样一个作为一个字符串:如何将毫秒(hh:mm:ss.xxx)的字符串时间转换为time.Time?
15:56:36.113
我想将其转换为time.Time
。
从我正在阅读的内容中,使用time.Parse()
时不能使用毫秒。
是否有另一种方法将我的字符串转换为time.Time
?
格式参考时间
甲小数点后面跟着一个或多个零表示小数 第二,打印到小数位的给定数。小数点 后跟一个或多个9表示小数秒,打印 至指定的小数位数,删除尾随零。 解析(仅)时,即使布局不是 表示其存在,输入可能包含紧接在秒字段后面的小数第二个字段 。在这种情况下,小数点后面跟着一个 最大系列的数字被解析为小数秒。
例如,
package main
import (
"fmt"
"time"
)
func main() {
t, err := time.Parse("15:04:05", "15:56:36.113")
if err != nil {
fmt.Println(err)
}
fmt.Println(t)
fmt.Println(t.Format("15:04:05.000"))
h, m, s := t.Clock()
ms := t.Nanosecond()/int(time.Millisecond)
fmt.Printf("%02d:%02d:%02d.%03d\n", h, m, s, ms)
}
输出:
0000-01-01 15:56:36.113 +0000 UTC
15:56:36.113
15:56:36.113
注:类型时间的零值是0000-01-01 00:00:00.000000000 UTC
。
package main
import (
"fmt"
"time"
)
func main() {
s := "15:56:36.113"
t,_ := time.Parse("15:04:05.000", s)
fmt.Print(t)
}
输出:
0000-01-01 15:56:36.113 +0000 UTC
你可以用它更多的在这里玩:https://play.golang.org/p/3A3e8zHQ8r
这不是重复。它要求的是小数秒。 – peterSO