1. 程式人生 > >Go語言學習筆記7: jsoniter 解碼json 使用指南

Go語言學習筆記7: jsoniter 解碼json 使用指南

範例:

var jsonIterator = jsoniter.ConfigCompatibleWithStandardLibrary	    //例項化工具類
var response struct {    //解碼承載結構體
	Result int `json:"result"`
	TaskId string `json:"task_id"`
}

jsonIterator.UnmarshalFromString(resultString, &response)

需要注意幾個點:

1. 結構體中的欄位,首字母要大寫

2.需要讀取的欄位,要寫json註解,例如:

Result int `json:"result"`

3.解碼的時候,需要傳入承載結構體的地址:

jsonIterator.UnmarshalFromString(resultString, &response)

4.使用omitempty,在marshall時忽視不需要的欄位

type faceStruct struct {
	Age *int `json:"age,omitempty"`
	Emotion int `json:"emotion,omitempty"`
}

{“age”:0,"emotion":0}, age會被解析, 而emotion會被忽視