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, ";"))
}
饮歌长啸
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)
- 2 回答
- 0 关注
- 204 浏览
添加回答
举报
0/150
提交
取消