Чтение нескольких объектов json из файла json в Go
Я пытаюсь прочитать следующие объекты json из файла json. Таким образом, количество объектов не предопределено, они могут быть несколько или только один.
Поэтому я попытался создать эту структуру, но я не могу прочитать ее правильно. Я хочу проанализировать элементы внутри объекта json.
type HostList struct {
HostList {}Host
}
type Host struct {
IP string `json: "ip"`
Netmask string `json: "netmask"`
Gateway string `json: "gateway"`
Mac string `json: "mac"`
Hostname string `json: "hostname"`
Callback string `json: "callback"`
}
И я хочу прочитать этот файл Json:
[
{
"ip": "4.3.2.10",
"netmask": "255.255.255.234",
"gateway": "4.3.2.1",
"mac": "12:34:af:56:54:jj",
"hostname": "cds1.yyy.com",
"callback": ""
},
{
"ip": "4.3.2.11",
"netmask": "255.255.255.234",
"gateway": "4.3.2.1",
"mac": "12:34:af:55:54:jj",
"hostname": "cds2.yyy.com",
"callback": ""
}
]
1 ответ
Решение
Попробуйте использовать ниже
type HostList []struct {
IP string `json:"ip"`
Netmask string `json:"netmask"`
Gateway string `json:"gateway"`
Mac string `json:"mac"`
Hostname string `json:"hostname"`
Callback string `json:"callback"`
}
Вы можете использовать этот сайт https://mholt.github.io/json-to-go/ для создания структуры Go из JSON.