首页 >后端开发 >Golang >如何使用 Go 的'encoding/json”成功解组键中带有空格的 JSON 数据?

如何使用 Go 的'encoding/json”成功解组键中带有空格的 JSON 数据?

Susan Sarandon
Susan Sarandon原创
2024-12-23 22:50:12844浏览

How Can I Successfully Unmarshal JSON Data with Spaces in Keys Using Go's `encoding/json`?

JSON 键中的空格:克服解组障碍

使用包含空格的键解组 JSON 数据可能会对标准编码/json 提出挑战Go 中的库。默认情况下,库将尝试将 JSON 键与不带空格的字段名称匹配。在提供的代码中:

type Animal struct {
    Name  string `json:"Na me"`
    Order string `json:"Order,omitempty"`
}

JSON 数据中的 Name 键与此模式冲突。可以通过修改 json 标签以准确反映 JSON 键来纠正此错误:

type Animal struct {
    Name  string `json:"Na me"` // Corrected the space after the colon
    Order string `json:"Order,omitempty"`
}

正如encoding/json 的文档所述,冒号后面的 json 标签中不允许有空格。通过遵循此指导,解组过程将能够正确识别 JSON 键并将其映射到 Animal 结构中的相应字段。执行更正后的代码将产生预期的输出:

[{Name:Platypus Order:Monotremata} {Name:Quoll Order:Dasyuromorphia}]

以上是如何使用 Go 的'encoding/json”成功解组键中带有空格的 JSON 数据?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn