package jsonexample import ( "encoding/json" "fmt" ) type Person struct { Name string `json:"name"` Age int `json:"age"` History []string `json:"history"` } func JsonParsingExample() { obj := map[string]interface{}{ "name": "홍길동", "age": 623, "history": []string{ "1900-양반집을 털었다", "1910-왕에게 잡혀감", }, } b, err := json.Marshal(obj) if err != nil { panic(err) } fmt.Println(string(b)) obj2 := map[string]interface{}{} err = json.Unmarshal(b, &obj2) if err != nil { panic(err) } fmt.Println(obj2["age"]) p := Person{ Name: "Godopu2", Age: 70, History: []string{ "1900-양반집을 털었다", "1910-왕에게 잡혀감", }, } b, err = json.Marshal(&p) if err != nil { panic(err) } fmt.Println(string(b)) var p2 Person err = json.Unmarshal(b, &p2) if err != nil { panic(err) } fmt.Println(p2.Age) }