...
1
2
3 package main
4
5 import (
6 "fmt"
7
8 "github.com/clbanning/mxj"
9 )
10
11 func main() {
12 j := `{"jsonData":{
13 "DataReference":[
14 {
15 "ParameterType":"test",
16 "Applicationtype":[
17 {
18 "Application1":{
19 "ApplicationName":"app1",
20 "Param1":{
21 "Name":"app1.param1"
22 },
23 "Param2":{
24 "Name":"app1.param2"
25 }
26 },
27 "Application2":{
28 "ApplicationName":"app2",
29 "Param1":{
30 "Name":"app2.param1"
31 },
32 "Param2":{
33 "Name":"app2.param2"
34 }
35 }
36 }
37 ]
38 }
39 ]
40 }}`
41
42
43 m, err := mxj.NewMapJson([]byte(j))
44 if err != nil {
45 fmt.Println("err:", err)
46 return
47 }
48 mxj.LeafUseDotNotation()
49 l := m.LeafNodes()
50 for _, v := range l {
51 fmt.Println("path:", v.Path, "value:", v.Value)
52 }
53
63 }
64
View as plain text