在 Go 中将 JSON 文件读取为 JSON 对象
要在 Go 中将 JSON 文件读取为 JSON 对象,理解这个概念至关重要指针和类型断言。
读取 JSON文件
plan, err := ioutil.ReadFile(filename) if err != nil { log.Fatal(err) }
解组数据
要存储 JSON 对象,您需要一个指向变量的指针,如 Go 文档中所指定:
var data interface{} if err := json.Unmarshal(plan, &data); err != nil { log.Fatal(err) }
这会将 JSON 对象存储在由data.
访问 JSON 对象
由于数据是一个接口,因此必须使用类型断言来访问其底层值:
switch data := data.(type) { case map[string]interface{}: // Loop through the map as a JSON object for key, value := range data { fmt.Println(key, value) } case []interface{}: // Loop through the slice as a JSON array for _, value := range data { fmt.Println(value) } default: // Handle other types as needed }
编组调试
如果需要查看 JSON对象作为字符串用于调试目的,您可以使用:
jsonString, err := json.Marshal(data) if err != nil { log.Fatal(err) } fmt.Println(string(jsonString))
注意:
以上是如何在 Go 中将 JSON 文件读取为 JSON 对象?的详细内容。更多信息请关注PHP中文网其他相关文章!