在Go 中解組字串編碼的整數
當嘗試將帶有字串值的JSON 解組到整數段時,可能會遇到錯誤:「json:無法將字串解組為int64 類型的Go 值。」這是因為預設情況下JSON 解組假定數字類型(例如int64)應包含數字字元。
問題:
定義 int64 欄位的 Go 結構正在接收具有對應欄位的 JSON欄位編碼為字串。資料類型不符會導致解組過程失敗。
解決方案:
建議的解決方案是在整數欄位的 json 結構體標記中使用「,string」標記。這指示解組過程接受字串類型的值:
type tySurvey struct { Id int64 `json:"id,string,omitempty"` Name string `json:"name,omitempty"` }
實作:
使用修改後的結構,現在可以將具有編碼為字串的id 欄位的JSON 資料成功解組為tySurvey 類型的Go 物件。
注意:
請務必記住,在標記中指定 omitempty 將不允許對空字串進行解碼。 omitempty 專門用於編碼目的。
以上是如何在 Go 中解組字串編碼的整數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!