英文:
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")
答案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
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论