gpt4 book ai didi

go - json 编码结构数组的一个属性

转载 作者:IT王子 更新时间:2023-10-29 02:02:47 25 4
gpt4 key购买 nike

所以我有一个 struct Recipe 数组,它包含一些属性,其中一个属性是 struct Source,我想将整个数组转换为 json 但只有 Recipe 结构的 Source 属性

代码:https://play.golang.org/p/E71d4xzNM4

结果:

[
{
"Id": 1,
"Title": "Fine Peanutbutter",
"Description": "The best peanutbutter in the world",
"Source": {
"Name": "Peter",
"Address": "32121 Little Midge"
},
"Price": 49
},
{
"Id": 2,
"Title": "Fine Jelly",
"Description": "The best Jelly in the world",
"Source": {
"Name": "Peter",
"Address": "32121 Little Midge"
},
"Price": 39
}
]

想要的结果:

[
{
"Name": "Peter",
"Address": "32121 Little Midge"
},
{
"Name": "Peter",
"Address": "32121 Little Midge"
}
]

我如何在不遍历整个数组并创建一个新的数组结构并在该结构上执行 json 编码的情况下获得它

最佳答案

您可以定义自定义编码器:

func (r Recipe) MarshalJSON() ([]byte, error) {
return json.Marshal(r.Source)
}

https://play.golang.org/p/xLUAlMllGR

关于go - json 编码结构数组的一个属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46142980/

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