Joa*_*kim 7 datetime json iso8601 go rfc3339
背景我正在学习Go,我正在尝试对日期时间进行一些JSON解组.
strftime
%Y-%m-%dT%H:%M:%S.%f%z
%fstrftime
这将产生以下结果:
2016-08-08T21:35:14.052975+0200
然而,在Go中解组这个不起作用:https: //play.golang.org/p/vzOXbzAwdW
package main
import (
"fmt"
"time"
)
func main() {
t, err := time.Parse(time.RFC3339Nano, "2016-08-08T21:35:14.052975+0200")
if err != nil {
panic(err)
}
fmt.Println(t)
}
输出:
panic: parsing time "2016-08-08T21:35:14.052975+0200" as "2006-01-02T15:04:05.999999999Z07:00": cannot parse "+0200" as "Z07:00"
02:00:strftime0200
所以我需要在我的C程序中修复它以输出正确的格式.
%z The +hhmm or -hhmm numeric timezone (that is, the hour and
minute offset from UTC). (SU)
题
但是,现在我有一堆JSON文件格式不正确:
2016-08-08T21:35:14.052975+0200
:
2016-08-08T21:35:14.052975+02:00
但我仍然希望能够在我的Go程序中正确解组它.优选地,仅具有此差异的两个不同JSON文件应以完全相同的方式解析.
关于封送回JSON,应该使用正确的格式.
struct
Time time.Time `json:"time"`
所以问题是,这样做的"Go"方式是什么?
RFC3339Nanojson:"time"