不能将文档[0](类型uint8)用作函数参数中的类型[]字节



我正试图从文档中提取一个JSON字符串,并将其放入GOlang中的SimpleJson中,尽管我遇到了类型问题(再次..)

我得到以下错误:

不能将文档[0](类型uint8)用作函数参数中的类型[]字节

出现错误的线路是:

js, err := simplejson.NewJson(document[0])

有人能帮我解决这个问题吗?还有没有一个好地方可以让我了解类型和转换?由于来自没有类型的php和转换简单的python,GO在这方面有点令人困惑。

感谢:-)

首先,uint8只是byte的别名。因此CCD_ 3与CCD_。

错误消息告诉您的是文档[0]的类型为uint8,而不是[]byte

从您的评论中可以清楚地看出,document就是string。您应该将其转换为[]字节。如果JSON数据本身包含一个数组,则必须首先解析文档(将其传递给NewJson),然后才能检索JSON数组的第一个值。

所以,改为:

js, err := simplejson.NewJson([]byte(document))
// error testing
jsonArray, err := js.Array()
// more error testing
fmt.Println(jsonArray[0])

(我想你已经导入了github.com/xiocode/toolkit/simplejson包。这是我唯一能用simplejson.NewJson找到的包)

最新更新