gpt4 book ai didi

Golang 时间解析问题

转载 作者:IT王子 更新时间:2023-10-29 01:51:57 24 4
gpt4 key购买 nike

我正在执行下面的代码来解析时间

var time_format = "2006-01-02T15:04:05.000+0700"
var s = "2018-08-23T14:10:31.692+0700"
p, _ := time.Parse(time_format, s)
fmt.Println(p.String())

上述程序的输出如下。

2018-08-23 14:10:31.692 +0000 UTC

这是 UTC 的同一时间,而我正在解析一个比 UTC 提前 +0700 的时间,因此预期的结果应该是

2018-08-23 7:10:31.692 +0000 UTC

谁能告诉我这是什么问题。

最佳答案

这是因为你的格式字符串不正确。时区指示必须是 -0700(不是 +0700)。 time.Parse() :

The layout defines the format by showing how the reference time, defined to be

Mon Jan 2 15:04:05 -0700 MST 2006

有了这个改变,它就可以工作了:

var format = "2006-01-02T15:04:05.000-0700"

var s = "2018-08-23T14:10:31.692+0700"
p, err := time.Parse(format, s)

fmt.Println(p.String(), err)

这将输出(在 Go Playground 上尝试):

2018-08-23 14:10:31.692 +0700 +0700 <nil>

关于Golang 时间解析问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51984910/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com