zoukankan      html  css  js  c++  java
  • 62_json文件解析成结构体格式

    package main

    import (
    "encoding/json"
    "fmt"
    )

    type People struct {
    //由于结构体生成json文本成员变量必须大写,可以使用struct_tag来二次编码,此时可以使用小写
    Name string `json:"name"`
    Subject []string
    Isok bool `json:", string"` //转换成字符串类型输出
    Price float64 `json:"-"` //不打印
    }
    type People1 struct {
    //由于结构体生成json文本成员变量必须大写,可以使用struct_tag来二次编码,此时可以使用小写
    Name string `json:"name"`
    }

    func main() {
    //json文本
    JsonBuff := `
    {
    "Name":"steven",
    "Subject":[
    "C++",
    "Go",
    "Python"
    ],
    "Isok":true,
    "Price":66.66
    }

    `
    var p1 People
    err := json.Unmarshal([]byte(JsonBuff), &p1) //这里p1一定是去地址
    if err != nil {
    fmt.Println("err=", err)
    return
    }
    fmt.Println(p1) //{steven [C++ Go Python] true 0}
    fmt.Printf("%+v ", p1)
    //{Name:steven Subject:[C++ Go Python] Isok:true Price:0}

    //如果只想打印json中某个字段,可以结构体就定义哪一个
    var p2 People1
    err2 := json.Unmarshal([]byte(JsonBuff), &p2)
    if err2 != nil {
    fmt.Println("err2=", err2)
    return
    }
    fmt.Println(p2) //
    fmt.Printf("%+v ", p2) //{Name:steven}

    }
    每天的价值就是不停息的前进!!!
  • 相关阅读:
    centos 下PATH变量配置错误补救办法 Alex
    基于php模块方式安装LAMP和常见LAMP应用 Alex
    php配置 Alex
    php测试小代码 Alex
    PHP简介 Alex
    2.7.JavaScriptnull与undefined
    2.9.JavaScript内置对象
    2.8.JavaScript不同数据类型转换
    2.2.javascript变量作用域
    2.6.Javascript数值型
  • 原文地址:https://www.cnblogs.com/zhaopp/p/11626081.html
Copyright © 2011-2022 走看看