gpt4 book ai didi

arrays - 创建 go 结构以接受带有匿名顶级项目的 json

转载 作者:行者123 更新时间:2023-12-01 22:32:06 24 4
gpt4 key购买 nike

我正在接收这个结构,但不知道如何创建 go 结构以将其编码为:
[
{
“搜索信息”:[
{
“PrefProv”:“68”,
“语言”:“乌兹别克语”
}
]
}
]
如何定义 go 结构以将其解码?

最佳答案

这里有一个例子:

package main

import (
"encoding/json"
"fmt"
)

type RawStruct []struct {
Searchinfo []struct {
PrefProv string `json:"PrefProv"`
Language string `json:"Language"`
} `json:"searchinfo"`
}

func main() {
raw_data := `[{"searchinfo":[{"PrefProv":"68","Language":"Uzbek"}]}]`
var rawStruct RawStruct
if err := json.Unmarshal([]byte(raw_data), &rawStruct); err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", rawStruct)
fmt.Println("---------")
for indexStruct, itemStruct := range rawStruct {
fmt.Printf("Iterating element [%d] of itemStruct: [%+v]\n", indexStruct, itemStruct)
for indexInfo, itemInfo := range itemStruct.Searchinfo {
fmt.Printf("[%d] PrefProv: %s\n", indexInfo, itemInfo.PrefProv)
fmt.Printf("[%d] Language: %s\n", indexInfo, itemInfo.Language)
}
}
}

结果:
[{Searchinfo:[{PrefProv:68 Language:Uzbek}]}]
---------
Iterating element [0] of itemStruct: [{Searchinfo:[{PrefProv:68 Language:Uzbek}]}]
[0] PrefProv: 68
[0] Language: Uzbek

关于arrays - 创建 go 结构以接受带有匿名顶级项目的 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63799573/

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