如何将接口映射转换为字符串映射

surendra:

我是新来的lang,我有一种类型的变量,如下所示:

type ResultData map[string]map[string][]interface{}

当我在此变量中接收数据时,如何在Go中将整个数据转换为单个字符串?

伊莱·本德斯基(Eli Bendersky):

您可以使用类似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字符串json.Marshal如果您背后的实际运行时类型interface{}可以编组为JSON,json.Marshal则可以自行解决。

b, _ := json.Marshal(m)
fmt.Println(string(b))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章