golang json字元串合併操作
- 2020 年 4 月 8 日
- 筆記
用於兩個json格式的字元串合併,當B向A合併時,共有的欄位,將用B欄位的值(伴隨類型一起覆蓋),非共有的,A的欄位保留,B的欄位新增。
example程式碼:
package main import ( "encoding/json" "fmt" ) type S struct { A uint32 `json:"a"` B string `json:"b"` C uint32 `json:"c"` } type S1 struct { B string `json:"b"` C uint32 `json:"c"` D uint32 `json:"d"` } func main() { s := S{ A: 12, C: 2, } s1 := S1{ B: "123", C: 99999, D: 10, } js, _ := json.Marshal(s) js1, _ := json.Marshal(s1) var m map[string]interface{} json.Unmarshal(js, &m) json.Unmarshal(js1, &m) res, _ := json.Marshal(m) fmt.Println(string(res)) // {"a":12,"b":"123","c":99999,"d":10} }
ref:https://stackoverrun.com/cn/q/11154146