在 Go 中,如何解组包含结构数组的字符串

我从 API 接收的属性之一是包含结构数组的字符串,其中结构的属性被转义。


我希望数据(输出对象)是一个简单的 MyStruct 数组,如下所示:


[{"f":"f-val"}]


但是,我得到的输出是一个空数组 []。


有人可以帮忙吗?我会很感激的。


package main


import "fmt"

import "encoding/json"


type MyStruct struct {

    F string

}


func main() {

    stringResponse := `"[{\"f\":\"f-val\"}]"`

    var data []MyStruct

    json.Unmarshal([]byte(string(stringResponse)), &data)

    fmt.Print(data)

}


青春有我
浏览 152回答 1
1回答

三国纷争

这是正确的例子:package mainimport (   "encoding/json"   "strconv")func main() {   s, e := strconv.Unquote(`"[{\"f\":\"f-val\"}]"`)   if e != nil {      panic(e)   }   var (      b = []byte(s)      m []struct{F string}   )   json.Unmarshal(b, &m)   println(m[0].F == "f-val")}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go