Golang JSON-序列化map,切片(slice),结构体(struct)

package main

import (
	"encoding/json"
	"fmt"
)

func mapJson() {
	testMap := make(map[string]interface{})
	testMap["name"] = "typ"
	testMap["age"] = 123
	testMap["addr"] = "beijing"
	json01, err := json.Marshal(testMap)
	if err != nil {
		fmt.Println("json失败")
	}
	fmt.Println(string(json01))
}
type stu struct {
	//tagjson序列化后是小写
	Name string 	`json:"name"`
	Age int			`json:"age"`
	Hobbit string	`json:"hobbit"`
}

func structJson(){
	stu := stu{
		Name:   "qqqq",
		Age:    12,
		Hobbit: "ttttt",
	}
	json01, err := json.Marshal(stu)
	if err != nil {
		fmt.Println("json失败")
	}
	fmt.Println(string(json01))
}

func slienceJson() {
	var sli  = make([]map[string]interface{},2)
	testMap := make(map[string]interface{})
	testMap["name"] = "typ111"
	testMap["age"] = 1231
	testMap["addr"] = "beijing111"

	testMap1 := make(map[string]interface{})
	testMap1["name"] = "typ222"
	testMap1["age"] = 1222
	testMap1["addr"] = "beijing222"
	sli[0] = testMap
	sli[1] = testMap1
	json01, err := json.Marshal(sli)
	if err != nil {
		fmt.Println("json失败")
	}
	fmt.Println(string(json01))
}

func main() {
	mapJson()
	structJson()
	slienceJson()

}

 

你可能感兴趣的:(golang,golang)