Heim > Backend-Entwicklung > Golang > golang string 转json

golang string 转json

WBOY
Freigeben: 2023-05-13 10:04:07
Original
3330 Leute haben es durchsucht

In Golang können Sie zum Konvertieren des String-Typs in ein JSON-Objekt das JSON-Paket in der Standardbibliothek verwenden.

Zuerst können wir die Funktion json.Marshal() verwenden, um Objekte in Golang in Zeichenfolgen im JSON-Format zu konvertieren. Zum Beispiel:

type Person struct {
    Name string `json:"name"`
    Age  int    `json:"age"`
}

p := Person{Name: "Tom", Age: 29}
jsonStr, err := json.Marshal(p)
if err != nil {
    fmt.Println("json.Marshal failed:", err)
}

fmt.Println(string(jsonStr))
Nach dem Login kopieren

Der obige Code gibt die folgenden Ergebnisse aus:

{"name":"Tom","age":29}
Nach dem Login kopieren

Als nächstes können wir die Funktion json.Unmarshal() verwenden, um den JSON-String in ein Objekt zu konvertieren in Golang. Beispiel:

jsonStr := `{"name":"Tom","age":29}`

var p Person
err := json.Unmarshal([]byte(jsonStr), &p)
if err != nil {
    fmt.Println("json.Unmarshal failed:", err)
}

fmt.Println(p.Name, p.Age)
Nach dem Login kopieren

Der obige Code gibt die folgenden Ergebnisse aus:

Tom 29
Nach dem Login kopieren

Es ist zu beachten, dass beim Parsen von JSON Parameter vom Typ []Byte verwendet werden, also Die Zeichenfolge Der Typ muss durch erzwungene Typkonvertierung in den []Byte-Typ konvertiert werden.

Darüber hinaus können Sie auch direkt die Funktion json.NewDecoder() verwenden, um die JSON-Formatzeichenfolge in ein JSON-Objekt zu analysieren, zum Beispiel:

jsonStr := `{"name":"Tom","age":29}`

var data interface{}
decoder := json.NewDecoder(strings.NewReader(jsonStr))
err := decoder.Decode(&data)
if err != nil {
    fmt.Println("json.Unmarshal failed:", err)
}

fmt.Println(data)
Nach dem Login kopieren

Der obige Code wird Geben Sie die folgenden Ergebnisse aus:

map[name:Tom age:29]
Nach dem Login kopieren

Auf diese Weise können wir das JSON-Paket der Standardbibliothek in Golang verwenden, um den String-Typ in ein JSON-Objekt zu konvertieren.

Das obige ist der detaillierte Inhalt vongolang string 转json. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage