如何在 golang 中将 %3a 或 %a 存储在 String 中?
Posted
技术标签:
【中文标题】如何在 golang 中将 %3a 或 %a 存储在 String 中?【英文标题】:How to store %3a or %a in String in golang? 【发布时间】:2021-12-25 04:22:44 【问题描述】:我是 Go lang 的新手,并尝试使用 %3a 或 %a 在 String 中存储
str := fmt.Sprintf("dsfsd%a")
但是当我尝试打印它时,我看到“dsfsd%!a(Missing)”。
有没有办法在字符串中存储诸如“%a”“%3a”之类的字符序列?这个字符串来自 JSON,它不是硬编码的。
【问题讨论】:
使用简单赋值将字符串文字存储在字符串变量中:str := "dsfsd%a"
。如问题示例所示,无需调用 fmt.Sprintf。
【参考方案1】:
你需要escape the percent
str := fmt.Sprintf("dsfsd%%a")
【讨论】:
另外,如果你不做插值,这里不需要使用Sprintf
...【参考方案2】:
问题是fmt.Sprintf
将其视为格式字符串
为了解决这个问题,我们可以将格式字符串添加到fmt.Sprintf
并将值作为数据传递给格式字符串
str := fmt.Sprintf("%s", "dsfsd%a")
在这里工作example
【讨论】:
以上是关于如何在 golang 中将 %3a 或 %a 存储在 String 中?的主要内容,如果未能解决你的问题,请参考以下文章
如何在Golang beego框架中将数据从MySQL数据库保存到redis?
如何在golang中将字节附加到字节数组?不是字节数组到字节数组切片等[重复]
如何在 Spark Submit 中将 s3a 与 Apache spark 2.2(hadoop 2.8) 一起使用?