登录
首页 >  Golang >  Go问答

解析带转义字符的 JSON 字符串在 Golang 中

来源:stackoverflow

时间:2024-03-02 11:12:26 248浏览 收藏

从现在开始,努力学习吧!本文《解析带转义字符的 JSON 字符串在 Golang 中》主要讲解了等等相关知识点,我会在golang学习网中持续更新相关的系列文章,欢迎大家关注并积极留言建议。下面就先一起来看一下本篇正文内容吧,希望能帮到你!

问题内容

假设我有这个 json 字符串:

{\"a\":\"a\",\"b\":\"b\",\"c\":\"c\",\"d\":2,\"e\":\"e\"}

我想将上面的字符串转换为结构:

{
  A string
  B string
  C string
  D int
  E string
}

我不确定如何做到这一点,因为我已经进行了引用和取消引用,但似乎还没有成功。


正确答案


在取消引用之前将传入的字符串包裹起来,如下所示:

s,err := strconv.unquote(`"`+yourstring+`"`)

然后你可以继续解组它。

有点黑客,但输入字符串是它在 json 对象中的编码方式,所以你可以这样做:

x:=json.RawMessage(`"{\"A\":\"a\",\"B\":\"b\",\"C\":\"c\",\"D\":2,\"E\":\"e\"}"`)
var v string
err:=json.Unmarshal(x,&v)
var x MyStruct
json.Unmarshal([]byte(v),&x)

好了,本文到此结束,带大家了解了《解析带转义字符的 JSON 字符串在 Golang 中》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>