JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,易于閱讀和編寫。在Go中,處理JSON數據非常方便。本文將介紹如何在Go中編碼JSON。
Go標準庫提供了一個“encoding/json”包,用于JSON編解碼。使用該包,我們可以將Go類型編碼為JSON格式,并將JSON數據解碼為Go類型。
下面是一個編碼JSON的示例代碼:
package main import ( "encoding/json" "fmt" "os" ) type Person struct { Name string Age int } func main() { person := Person{"Tom", 20} jsonBytes, err := json.Marshal(person) if err != nil { fmt.Println("JSON encoding error:", err) os.Exit(1) } fmt.Println("JSON encoded data:", string(jsonBytes)) }
在這個示例中,我們定義了一個Person結構體,并創建一個Person實例。然后,我們使用“json.Marshal”函數將Person實例編碼為JSON格式,并將結果保存在名為“jsonBytes”的變量中。最后,我們使用“fmt.Println”函數將JSON編碼數據打印到控制臺。
代碼輸出:
JSON encoded data: {"Name":"Tom","Age":20}
可以看到,輸出結果是一個有效的JSON格式字符串。
JSON編碼的過程非常簡單:只需要調用“json.Marshal”函數并傳遞要編碼的Go類型即可。如果編碼成功,該函數將返回一個字節數組。如果有錯誤發生,則返回一個非nil的錯誤。
上一篇go 直接解析json
下一篇go 生成json