Heim > Backend-Entwicklung > Golang > Wie kodiere ich JSON-Daten in Golang?

Wie kodiere ich JSON-Daten in Golang?

WBOY
Freigeben: 2024-06-03 13:44:56
Original
696 Leute haben es durchsucht

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.

如何在 Golang 中编码 JSON 数据?

Wie kodiere ich JSON-Daten in Golang?

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

要将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))
}
Nach dem Login kopieren

上面的代码片段会输出如下 JSON:

{"Name":"John Doe","Age":30,"Admin":false}
Nach dem Login kopieren

解码 JSON 为 Go 类型

要从 JSON 编码中解码一个 Go 类型,可以使用 json.Unmarshal

Go-Typen in JSON kodieren

Um Go-Typen in JSON zu kodieren, können Sie die Funktion 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)
}
Nach dem Login kopieren

Das obige Code-Snippet gibt den folgenden JSON aus:

{John Doe 30 false}
Nach dem Login kopieren
JSON in Go-Typ dekodieren
  • Um einen Go-Typ aus der JSON-Kodierung zu dekodieren, können Sie die Funktion json.Unmarshal verwenden. Diese Funktion akzeptiert einen JSON-codierten Byte-Slice und speichert den entsprechenden Wert im bereitgestellten Go-Typ.
  • rrreee
  • Das obige Code-Snippet gibt die folgenden Ergebnisse aus:
  • rrreee
  • Praktischer Fall
In vielen praktischen Szenarien ist es notwendig, Go-Typen in JSON zu kodieren, wie zum Beispiel:

    HTTP-API erstellen
  • Daten in JSON speichern Dateien
  • Übertragen von Daten in verteilten Systemen
Umgekehrt hat das Kodieren und Dekodieren von Go-Typen aus JSON auch viele praktische Anwendungen, wie zum Beispiel: 🎜🎜🎜Antworten von HTTP-APIs analysieren 🎜🎜Daten aus JSON-Dateien lesen 🎜🎜Daten von verteilten Systemen empfangen 🎜🎜

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!

Verwandte Etiketten:
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