为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

Go
MMMHUHU 2023-02-21 16:34:24
    data := map[string]interface{}{            "username":       'username1',            "password":       'password1'        }我有一个 map[string]interface{} 数据,我想形成一个如下所示的字符串str = "用户名='用户名1',密码='密码1'"我怎样才能像上面那样形成字符串,即 key1='value1', key2='value2'....我是 golang 的新手我试过 append() 但遇到了诸如无法将 []string 附加到变量类型字符串的问题
查看完整描述

2 回答

?
达令说

TA贡献1821条经验 获得超6个赞

你尝试过什么吗?有很多方法可以做你想做的事。有些比其他的性能更好,有些更容易编写……这将是实现您需要的一种快速方法:


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, ";"))

}


查看完整回答
反对 回复 2023-02-21
?
饮歌长啸

TA贡献1951条经验 获得超3个赞

数据范围。如果不是第一个,请添加逗号。写密钥。写=。写入值。


data := map[string]interface{}{

    "username": "username1",

    "password": "password1",

}

var sb strings.Builder

for 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)


查看完整回答
反对 回复 2023-02-21
  • 2 回答
  • 0 关注
  • 204 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信