json Unmarshal错误

时间:2013-03-28 15:42:22

标签: json go

我收到错误:

json.Unmarshal undefined (type interface {} has no field or method Unmarshal)

尝试将json字节切片转换为通用接口{}类型。我正在阅读encoding/json的文档,并举例说明这是有效的。是什么给了什么?

package main

import (
    "encoding/json"
    "fmt"
    "io/ioutil"
)

func main() {

    var json interface{}
    data, _ := ioutil.ReadFile("testMusic.json")
    json.Unmarshal(data, &json)
    m := json.(map[string]interface{})
    fmt.Printf("%+v", m)

}

1 个答案:

答案 0 :(得分:34)

您已经定义了一个局部变量json,它掩盖了引用JSON模块的全局符号json。重命名本地变量应该允许您的代码工作。