Golang 中解析JSON的三種方式

2021-10-10 11:47:49 字數 1995 閱讀 7058

直接貼**,總的來說,golang解析 json 跟動態語言比起來還挺費勁的,目前只找到了這三種方式來解析,可能一些 web 框架會自動幫開發處理好吧!

`)// 第一種方式

fmt.

println

("---------------- 第一種解析json方式 ----------------"

)var user map

[string

]inte***ce

err = json.

unmarshal

(jsonstr,

&user)

if err !=

nil fmt.

printf

("名字:%s\n"

, user[

"name"].

(string))

fmt.

printf

(, user[

"email"].

(string))

for i, address :=

range user[

"addresses"].

([]inte***ce))

fmt.

printf

(, i, addr[

"province"].

(string

), addr[

"city"].

(string

), addr[

"district"].

(string

), addr[

"detail"].

(string))

} fmt.

println

("\n---------------- 第二種解析json方式 ----------------"

)var user2 user

err = json.

unmarshal

(jsonstr,

&user2)

if err !=

nil fmt.

printf

("名字:%s\n"

, user2.name)

fmt.

printf

(, user2.email)

for i, address :=

range user2.addresses

fmt.

println

("\n--------------- 第三種解析json方式 ----------------"

)//

var user3 *******json.json

user3, err = ******json.

newjson

(jsonstr)

if err !=

nil name,

_:= user3.

get(

"name").

string()

email,

_:= user3.

get(

"email").

string()

fmt.

printf

("名字:%s\n"

, name)

fmt.

printf

(, email)

i :=

0for i <

len(user3.

get(

"addresses").

mustarray()

)}

golang解析複雜的json物件

json解析早就接觸過了,只不過是一直用在php裡面,今天有機會在golang中解析json,確實顛覆了php的json decode json 函式.好吧,今天我解析的汽車之家的介面,整個json資料用工具解析下來是這個樣子 好吧,這裡面有物件有陣列交替,先去分析一下這個json的組成,懂行的小夥...

golang解析json格式 全

專案中客戶端和服務端的互動資料部分為json,因此在服務端就得解析,複雜的json解析起來其實還是挺費勁的。互動的資料類似如下格式 需要將json格式中的w欄位取出來,並且拼成結果串進行展示 從json陣列中獲取ws ws是陣列,陣列元素為object cw是陣列,陣列元素為object w是str...

golang解析json格式 全

專案中客戶端和服務端的互動資料部分為json,因此在服務端就得解析,複雜的json解析起來其實還是挺費勁的。互動的資料類似如下格式 需要將json格式中的w欄位取出來,並且拼成結果串進行展示 從json陣列中獲取ws ws是陣列,陣列元素為object cw是陣列,陣列元素為object w是str...