Um JSON-Daten in Go zu kodieren, führen Sie die folgenden Schritte aus: Verwenden Sie json.Marshal, um Go-Typen in JSON-Byte-Slices zu kodieren. Verwenden Sie json.Unmarshal, um Go-Typen aus der JSON-Codierung zu dekodieren und JSON-Byte-Slices in Go-Typen zu speichern.
Das Kodieren von JSON-Daten in Go ist ein unkomplizierter Prozess, der mit der Standardbibliothek encoding/json
durchgeführt werden kann. Die Bibliothek bietet einen umfangreichen Satz an Funktionen zum Kodieren von Go-Typen in JSON und zum Dekodieren von Go-Typen aus der JSON-Kodierung. encoding/json
标准库来完成的简单明了的过程。该库提供了丰富的函数用于将 Go 类型编码为 JSON,以及从 JSON 编码中解码 Go 类型。
要将Go类型编码为JSON,可以使用 json.Marshal
函数。该函数接受一个 Go 值并返回其相应的 JSON 编码的字节切片。
package main import ( "encoding/json" "fmt" ) type User struct { Name string Age int Admin bool } func main() { user := User{Name: "John Doe", Age: 30, Admin: false} jsonBytes, err := json.Marshal(user) if err != nil { fmt.Println("Error encoding user:", err) return } fmt.Println(string(jsonBytes)) }
上面的代码片段会输出如下 JSON:
{"Name":"John Doe","Age":30,"Admin":false}
要从 JSON 编码中解码一个 Go 类型,可以使用 json.Unmarshal
json.Marshal
verwenden. Diese Funktion akzeptiert einen Go-Wert und gibt das entsprechende JSON-codierte Byte-Slice zurück. package main import ( "encoding/json" "fmt" ) type User struct { Name string Age int Admin bool } func main() { jsonBytes := []byte(`{"Name":"John Doe","Age":30,"Admin":false}`) var user User if err := json.Unmarshal(jsonBytes, &user); err != nil { fmt.Println("Error decoding user:", err) return } fmt.Println(user) }
{John Doe 30 false}
json.Unmarshal
verwenden. Diese Funktion akzeptiert einen JSON-codierten Byte-Slice und speichert den entsprechenden Wert im bereitgestellten Go-Typ. Das obige ist der detaillierte Inhalt vonWie kodiere ich JSON-Daten in Golang?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!