从 map[string]interface{} 创建字符串

    data := map[string]interface{}{

            "username":       'username1',

            "password":       'password1'

        }

我有一个 map[string]interface{} 数据,我想形成一个如下所示的字符串


str = "用户名='用户名1',密码='密码1'"


我怎样才能像上面那样形成字符串,即 key1='value1', key2='value2'....

我是 golang 的新手我试过 append() 但遇到了诸如无法将 []string 附加到变量类型字符串的问题


MMMHUHU
浏览 205回答 2
2回答

达令说

你尝试过什么吗?有很多方法可以做你想做的事。有些比其他的性能更好,有些更容易编写……这将是实现您需要的一种快速方法:func PrintStr(m map[string]interface{}) {    parts := make([]string, 0, len(m))    for k, v := range m {        parts = append(parts, fmt.Sprintf("%s=%v", k, v))    }    fmt.Printf("%s\n", strings.Join(parts, ";"))}

饮歌长啸

数据范围。如果不是第一个,请添加逗号。写密钥。写=。写入值。data := map[string]interface{}{    "username": "username1",    "password": "password1",}var sb strings.Builderfor k, v := range data {    if sb.Len() > 0 {        sb.WriteString(", ")    }    sb.WriteString(k)    sb.WriteString(`="`)    sb.WriteString(fmt.Sprint(v))    sb.WriteString(`"`)}s := sb.String()fmt.Println(s)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go