我正在执行下面的代码来解析时间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任何人都可以告诉这里的问题是什么。
1 回答
HUH函数
TA贡献1836条经验 获得超4个赞
这是因为您的格式字符串不正确。时区指示必须是-0700(不是+0700)。time.Parse():
布局通过显示如何定义参考时间来定义格式
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>
- 1 回答
- 0 关注
- 111 浏览
添加回答
举报
0/150
提交
取消