How to store %3a or %a in String in golang?

huangapple go评论87阅读模式
英文:

How to store %3a or %a in String in golang?

问题

我是你的中文翻译助手,以下是翻译好的内容:

我是Go语言的新手,尝试使用以下代码将"%3a"或"%a"存储到字符串中:

str := fmt.Sprintf("dsfsd%a")

但是当我尝试打印它时,我看到的是"dsfsd%!a(Missing)"。

有没有办法将像"%a"、"%3a"等一系列字符存储到字符串中?这个字符串来自JSON,而不是硬编码的。

英文:

I am new to Go lang and trying to store %3a or %a in String using

str := fmt.Sprintf("dsfsd%a")

But when I try to print it, I am seeing "dsfsd%!a(Missing)".

Is there a way to store a sequence of characters like "%a" "%3a" etc.. in String? This string is coming from JSON and it's not hardcoded.

答案1

得分: 3

你需要转义百分号

str := fmt.Sprintf("dsfsd%%a")
英文:

You need to escape the percent

str := fmt.Sprintf("dsfsd%%a")

答案2

得分: 0

问题是fmt.Sprintf将其视为格式字符串

为了解决这个问题,我们可以将格式字符串添加到fmt.Sprintf中,并将值作为数据传递给格式字符串

str := fmt.Sprintf("%s", "dsfsd%a")

这里是一个可工作的示例

英文:

The problem is fmt.Sprintf is treating it as format string

To solve this we can add format string to fmt.Sprintf and pass value as data to format string

str := fmt.Sprintf("%s", "dsfsd%a")

Here working example

huangapple
  • 本文由 发表于 2021年11月13日 05:41:52
  • 转载请务必保留本文链接:https://go.coder-hub.com/69949364.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定