【发布时间】:2019-09-21 22:17:51
【问题描述】:
我是新来的 lang,我有一种变量,如下所示:
type ResultData map[string]map[string][]interface{}
当我在这个变量中接收数据时,如何在 Go 中将整个数据转换为单个字符串?
【问题讨论】:
标签: go
我是新来的 lang,我有一种变量,如下所示:
type ResultData map[string]map[string][]interface{}
当我在这个变量中接收数据时,如何在 Go 中将整个数据转换为单个字符串?
【问题讨论】:
标签: go
你可以使用类似Sprintf:
func main() {
d1 := map[string][]interface{}{
"a": []interface{}{20, "hello"},
"b": []interface{}{100}}
d2 := map[string][]interface{}{
"x": []interface{}{"str", 10, 20},
}
m := make(map[string]map[string][]interface{})
m["d1"] = d1
m["d2"] = d2
s := fmt.Sprintf("%v", m)
fmt.Println(s)
}
或者您也可以使用json 模块来转换为带有json.Marshal 的JSON 字符串。如果interface{} 背后的实际运行时类型可以编组为 JSON,json.Marshal 将自行解决。
b, _ := json.Marshal(m)
fmt.Println(string(b))
【讨论】: