卓越飞翔博客卓越飞翔博客

卓越飞翔 - 您值得收藏的技术分享站
技术文章57098本站已运行407

如何在 Golang 中处理有嵌套结构的 JSON 数据?

在 go 中处理嵌套结构的 json 数据:使用 encoding/json 包对 json 数据进行编解码。使用 json.unmarshal() 函数解码 json 数据到嵌套结构。使用 json.marshal() 函数将嵌套结构编码为 json。通过访问结构中的字段来访问嵌套数据。从 api 中获取并解码嵌套结构的 json 数据。

如何在 Golang 中处理有嵌套结构的 JSON 数据?

如何在 Go 中处理有嵌套结构的 JSON 数据

在 Go 中,你可以使用 encoding/json 包轻松处理嵌套结构的 JSON 数据。这个包提供了对 JSON 数据进行编解码的强大功能。

编解码嵌套结构

要对嵌套结构进行编码或解码,你可以使用 json.Unmarshal() 和 json.Marshal() 函数。

// 嵌套结构的 JSON 数据
jsonStr := `{"name": "John Doe", "age": 30, "address": {"street": "123 Main St", "city": "New York"}}`

// 解码 JSON 数据到嵌套结构
type Person struct {
    Name string
    Age  int
    Address Address
}

var person Person
err := json.Unmarshal([]byte(jsonStr), &person)
if err != nil {
    // 处理错误
}

// 访问嵌套字段
fmt.Println(person.Name) // John Doe
fmt.Println(person.Address.Street) // 123 Main St

// 编码嵌套结构为 JSON
jsonBytes, err := json.Marshal(person)
if err != nil {
    // 处理错误
}

// 输出 JSON 数据
fmt.Println(string(jsonBytes))

实战案例:从 API 获取数据

现在,让我们看看一个实战案例,我们将从 API 获取包含嵌套结构的 JSON 数据并将其解码到 Go 结构。

package main

import (
    "encoding/json"
    "fmt"
    "io/ioutil"
    "net/http"
)

type Post struct {
    ID          int
卓越飞翔博客
上一篇: PHP微框架实战:Slim和Phalcon深度比较
下一篇: 返回列表
留言与评论(共有 0 条评论)
   
验证码:
隐藏边栏