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

在一个字符串中允许多个参数 [Go]

在一个字符串中允许多个参数 [Go]

Go
慕尼黑5688855 2022-01-04 10:41:57
我正在使用 Gomail 从表单中获取数据并将其通过电子邮件发送给我自己。如果我想获得用户的全名,这就是我将使用的:m.SetBody("text/html", fmt.Sprintf("<b>Full Name</b>: %s", msg.completeName))它在电子邮件中是这样的:全名:约翰·迈克尔·史密斯现在如果我想在代码中添加一个消息字段m.SetBody("text/html", fmt.Sprintf("<b>Full Name</b>: %s", msg.completeName, "<br> <b>Message</b> %s", msg.Content))它输出这个:全名: John Michael Smith%!(EXTRA string=消息:%s,字符串=你好!)我希望它看起来像这样:全名:约翰·迈克尔·史密斯消息:你好!
查看完整描述

1 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

问题是您以错误的方式使用 Sprintf。

Sprintf 需要字符串格式的第一个参数,那么所有你需要在最后要插入的字符串变量。

因此你的代码应该是:

m.SetBody("text/html", fmt.Sprintf("<b>Full Name</b>: %s <br><b>Message</b> %s", msg.completeName, msg.Content))

有关更多信息,我建议您阅读Sprintf 文档

注意:在评论中我说“你为什么不连接字符串?” 因为你也可以这样做:

m.SetBody("text/html", "<b>Full Name</b>: "+ msg.completeName +" <br><b>Message</b> " + msg.Content))



查看完整回答
反对 回复 2022-01-04
  • 1 回答
  • 0 关注
  • 139 浏览
慕课专栏
更多

添加回答

举报

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