我正试图从文档中提取一个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找到的包)