如何在Golang中从json中提取单个值? 我的代码 输出

如何在Golang中从json中提取单个值? 我的代码 输出,json,go,Json,Go,所有主机信息:%!额外字符串={主机名:UDAY-PC,正常运行时间:536323,启动时间:1559911444,进程:248,操作系统:windows,平台:Microsoft windows 10 Pro,平台系列:独立工作站,平台版本:10.0.17134构建17134,内核版本:,虚拟化系统:,虚拟化角色:,主机ID:0b324295-3631-47db-b6e8-83cdba2a1af9} 我想从上面解析并显示以下值: 主机名 站台 霍斯蒂德 我试过了,下面有附加代码: 正如Adri

所有主机信息:%!额外字符串={主机名:UDAY-PC,正常运行时间:536323,启动时间:1559911444,进程:248,操作系统:windows,平台:Microsoft windows 10 Pro,平台系列:独立工作站,平台版本:10.0.17134构建17134,内核版本:,虚拟化系统:,虚拟化角色:,主机ID:0b324295-3631-47db-b6e8-83cdba2a1af9}

我想从上面解析并显示以下值:

主机名 站台 霍斯蒂德 我试过了,下面有附加代码:
正如Adrian上面提到的,您的变量有问题

在Go中,您可以像以前一样初始化变量:

变量信息字符串 //并通过以下方式为其赋值: info=foo Json被解组到info变量中。Unmarshal的返回值只是一个错误。因此正确的语法应该是:

var信息[]信息 错误:=json.UnmarshalinfoStat,&info 因此,请记住初始化变量和为这些变量赋值的不同方法。
您可以查看更多信息:

您尝试过吗?解析JSON是一项常见的任务,通过一个简单的web搜索就可以获得大量信息。你有没有尝试过的代码?你能展示一下吗?那么,你有什么问题吗?我已经添加了我的代码,我尝试@Adrian这里是我得到的错误:在:=右边的左边没有新变量。。。info和err已定义,与错误所述完全相同。使用=而不是:=分配给已经存在的变量。基本的Go语法在本文中有详细介绍。
func HostStats() (*host.InfoStat, error) {
   infoStat, err := host.Info()
   fmt.Printf("All Host info: ", infoStat)
   return infoStat, err
}
func HostStats() (*host.InfoStat, error) {

infoStat, err := host.Info()

type Information struct {
    Name  string
    Platform string
    HostId  string
}

var info []Information
info, err := json.Unmarshal(infoStat, &info)
if err != nil {
    fmt.Println("error:", err)
}
fmt.Printf("ok: %+v", info)

//almost every return value is a struct
fmt.Printf("All Host info: ", infoStat)
return infoStat, err
}