在Go语言中,要打开JSON文件需要使用标准库中的"json"包和"io/ioutil"包。

首先,我们需要将JSON文件加载到内存中,这可以使用"io/ioutil"包中的"ReadFile"函数实现。例如,我们要打开名为"data.json"的文件:

data, err := ioutil.ReadFile("data.json")
if err != nil {
// 处理错误
}

上述代码将文件中的内容读入到"data"变量中,如果出现错误则返回错误信息。

接着,我们需要将JSON数据解码为Go结构体,这可以使用"json"包中的"Unmarshal"函数来完成。首先,我们需要定义一个与JSON数据对应的结构体:

type Person struct {
Name string `json:"name"`
Age  int    `json:"age"`
}

上述代码定义了一个名为"Person"的结构体,其中包含两个字段"name"和"age",分别对应JSON文件中的"name"和"age"字段。

接下来,我们可以使用解码函数"Unmarshal"对JSON数据进行解码:

var person Person
err = json.Unmarshal(data, &person)
if err != nil {
// 处理错误
}

上述代码将"data"中的JSON数据解码为"Person"结构体,并将结果存储在"person"变量中。如果出现错误则返回错误信息。

最后,我们可以访问结构体中的数据:

fmt.Println(person.Name, person.Age)

上述代码将输出"Person"结构体中的"name"和"age"字段的值。