Wie lese ich JSON-Dateien als JSON-Objekte in Go?

Barbara Streisand
Freigeben: 2024-11-11 10:19:02
Original
773 Leute haben es durchsucht

How to Read JSON Files as JSON Objects in Go?

JSON-Dateien als JSON-Objekte in Go lesen

Um eine JSON-Datei als JSON-Objekt in Go zu lesen, ist es wichtig, das Konzept zu verstehen von Zeigern und Typzusicherung.

Lesen des JSON Datei

plan, err := ioutil.ReadFile(filename)
if err != nil {
    log.Fatal(err)
}
Nach dem Login kopieren

Unmarshaling der Daten

Um das JSON-Objekt zu speichern, benötigen Sie einen Zeiger auf eine Variable, wie in der Go-Dokumentation angegeben :

var data interface{}
if err := json.Unmarshal(plan, &data); err != nil {
    log.Fatal(err)
}
Nach dem Login kopieren

Dies speichert das JSON-Objekt an dem Speicherort, auf den verwiesen wird Daten.

Zugriff auf das JSON-Objekt

Da Daten eine Schnittstelle sind, müssen Sie die Typzusicherung verwenden, um auf die zugrunde liegenden Werte zuzugreifen:

switch data := data.(type) {
case map[string]interface{}:
    // Loop through the map as a JSON object
    for key, value := range data {
        fmt.Println(key, value)
    }
case []interface{}:
    // Loop through the slice as a JSON array
    for _, value := range data {
        fmt.Println(value)
    }
default:
    // Handle other types as needed
}
Nach dem Login kopieren

Marshaling zum Debuggen

Wenn Sie das JSON-Objekt als Zeichenfolge zum Debuggen anzeigen müssen Zu Zwecken können Sie Folgendes verwenden:

jsonString, err := json.Marshal(data)
if err != nil {
    log.Fatal(err)
}
fmt.Println(string(jsonString))
Nach dem Login kopieren

Hinweis:

  • Stellen Sie sicher, dass die JSON-Datei korrekt formatiert ist und gültige JSON-Daten enthält.
  • Verwenden Sie nach Möglichkeit eine bestimmte Datenstruktur zum Füllen Ihres JSON anstelle einer leeren Schnittstelle.

Das obige ist der detaillierte Inhalt vonWie lese ich JSON-Dateien als JSON-Objekte in Go?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage