Go:json包的坑
生活随笔
收集整理的這篇文章主要介紹了
Go:json包的坑
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
import encoding/json func test() {
m := make(map[string]string)
a := `{"xiaoming":"男","xiaohong":"女"}`
data ,_ := json.Marshal(a)
json.Unmarshal(data,&m)
}
m := make(map[string]string)
a := `{"xiaoming":"男","xiaohong":"女"}`
data ,_ := json.Marshal(a)
json.Unmarshal(data,&m)
}
以上這段代碼是會報錯的,cannot unmarshal string into Go value of type map[string]string
這樣看是沒啥問題的,但是就是行不通
但是如果改成這樣子,就正常了
?
func test() {m := make(map[string]string)a := `{"xiaoming":"男","xiaohong":"女"}`json.Unmarshal([]byte(a),&m) }原因是json這個包的marshal方法返回的雖然是[]byte數(shù)組,但是并非簡單的普通的[]byte數(shù)組,內(nèi)部還是作了一些處理的,這就導(dǎo)致unmarshal失敗
轉(zhuǎn)載于:https://www.cnblogs.com/Miracle-boy/p/10951967.html
總結(jié)
以上是生活随笔為你收集整理的Go:json包的坑的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 好程序员web前端分享数组及排序、去重和
- 下一篇: 过去可忆,未来可期(随心录+杂记)