Go开发js css html

Json包

2022-07-12  本文已影响0人  菩提树下参悟

encoding/json

encoding/json是官方提供的标准json, 实现RFC 7159中定义的JSON编码和解码。使用的时候需要预定义struct,原理是通过reflectioninterface来完成工作, 性能低。

常用的接口:
package main

import (
    "encoding/json"
    "fmt"
)

//结构体与json

//1.序列化:把Go语言中的结构体变量--》json格式的字符串
//2.反序列化:jso格式的字符串 --》Go语言中识别的结构体变量

type person struct {
    Name string `json:"name" db:"name" ini:"name"`//结构体字段的可见性,json包,db数据库,ini文件
    Age  int    `json:"age"`
}

func main() {
    p1 := person{
        Name: "小林",
        Age:  90,
    }
    //序列化
    b, err := json.Marshal(p1)
    if err != nil {
        fmt.Printf("marshal failed,err:%v", err)
    }
    fmt.Println(string(b))
    fmt.Printf("%#v\n", string(b))
    //反序列化
    str := `{"name":"理想","age":18}`
    var p2 person
    json.Unmarshal([]byte(str), &p2) // 传指针是为了能在json.Unmarshal内部修改p2 的值
    fmt.Printf("%#v\n", p2)
}

json格式的在线工具
json

上一篇 下一篇

猜你喜欢

热点阅读