«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как проанализировать массивы JSON в Go, используя пакет `json`?

Как проанализировать массивы JSON в Go, используя пакет `json`?

Опубликовано в 2025-03-25
Просматривать:216

] How to Parse JSON Arrays in Go Using the `json` Package?

MARSING JSON Arrays в Go с пакетом JSON

задача: Как вы можете проанализировать строку json, представляющую массив в Go, используя JSON Package? &&? Пример:

рассмотрите следующий код GO:

type jsontype struct { Массив [] строка } func main () { DataJson: = `[" 1 "," 2 "," 3 "]` arr: = jsontype {} unmarshaled: = json.unmarshal ([] byte (datajson) и arr.array) log.printf ("Unmarshaled: %V", Unmarshaled) }

type JsonType struct {
    Array []string
}

func main() {
    dataJson := `["1", "2", "3"]`
    arr := JsonType{}
    unmarshaled := json.Unmarshal([]byte(dataJson), &arr.Array)
    log.Printf("Unmarshaled: %v", unmarshaled)
}

предоставленный код определяет тип jsontype с массивом строк. Затем он пытается разобраться в поле в поле массива экземпляра jsontype. Однако существует проблема с кодом.

решение:

возвращаемое значение Unmarshal является ошибкой. Код изначально напечатал эту ошибку вместо массива Unmarshaleed. Чтобы исправить это, вы можете изменить код на:

err: = json.unmarshal ([] byte (datajson), & arr)

Кроме _ = json.unmarshal ([] byte (datajson), & arr)
err := json.Unmarshal([]byte(dataJson), &arr)
этот код присваивает Unmarshaled slice на обр. Подчеркивание перед назначением подавляет значение ошибки, которое не используется в этом коде.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3