登录
首页 >  Golang >  Go问答

解组时间。时间改变响应

来源:stackoverflow

时间:2024-04-17 08:45:34 389浏览 收藏

golang学习网今天将给大家带来《解组时间。时间改变响应》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习Golang或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!

问题内容

我正在从服务器获取一些数据并对 json 进行解组。当我将日期时间字符串转换为字符串时,我将所有结果作为 un-marshalled 对象获取,但是当我将其键入为 time.time 时,对象的其余部分会被缩短。另外,日期是错误的,这可能是一个提示。

我开始将时间转换为字符串:

type history struct {
    id      string
    created string
    items   []historyitem
}

    var response []history
    json.unmarshal([]byte(s), &response)

这太棒了,我得到了这样的列表:

[{91096 2021-06-04t10:28:21.179-0400 [{rank  ranked higher}]} {91078 2021-06-04t09:49:28.630-0400 [{target end  8/jun/21}]} //...etc

但是当我尝试将其转换为 time 时:

type history struct {
    id      string
    created time.time
    items   []historyitem
}

我收到了一件物品,但显然时间不对。该对象中也没有其他值。

[{91096 0001-01-01 00:00:00 +0000 utc []}]

实际的 json 表示如下所示:

"created": "2021-06-04T10:28:21.179-0400",

正确答案


时间“2021-06-04t10:28:21.179-0400”的格式无法识别。你必须自己解析它。您可以使用这种格式来解析它:

t, err:=time.Parse("2006-01-02T15:04:05.999999999-0700","2021-06-04T10:28:21.179-0400")

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>