Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk menghuraikan data JSON di Golang?

Bagaimana untuk menghuraikan data JSON di Golang?

WBOY
WBOYasal
2024-06-03 15:33:09561semak imbas

Golang menghuraikan data JSON melibatkan empat langkah utama: Import pakej आवश्यक, yang termasuk json, fmt dan ioutil. Baca data JSON daripada fail. Nyahkod data JSON ke dalam struktur atau peta. Akses pasangan nilai kunci dalam peta atau gunakan struct yang dinyahkod.

如何在 Golang 中解析 JSON 数据?

Cara menghuraikan data JSON dalam Golang

Golang menyediakan alatan berkuasa untuk memproses data JSON, yang boleh dicapai melalui langkah berikut:

1 Import pakej yang diperlukan

import (
    "encoding/json"
    "fmt"
    "io/ioutil"
)

2 fail

jsonFile, err := ioutil.ReadFile("data.json")
if err != nil {
    fmt.Println("Error reading JSON file:", err)
    return
}

3. Nyahkodkan data JSON ke dalam struktur atau peta

Nyahkodkan ke dalam struktur:

type Person struct {
    Name string
    Age  int
}

var person Person
err = json.Unmarshal(jsonFile, &person)
if err != nil {
    fmt.Println("Error decoding JSON data:", err)
    return
}

Nyahkodkan ke dalam peta:

var data map[string]interface{}
err = json.Unmarshal(jsonFile, &data)
if err != nil {
    fmt.Println("Error decoding JSON data:", err)
    return
}

// 访问 map中的键值对
fmt.Println("Name:", data["Name"])

Kes cetak dan ulang nama JSON dan semula

dan nama semula JSON Simpan data JSON berikut ke dalam fail:

package main

import (
    "encoding/json"
    "fmt"
    "io/ioutil"
)

type Person struct {
    Name string
    Age  int
}

func main() {
    jsonFile, err := ioutil.ReadFile("data.json")
    if err != nil {
        fmt.Println("Error reading JSON file:", err)
        return
    }

    var person Person
    err = json.Unmarshal(jsonFile, &person)
    if err != nil {
        fmt.Println("Error decoding JSON data:", err)
        return
    }

    fmt.Printf("Name: %s, Age: %d\n", person.Name, person.Age)
}
Kemudian jalankan program, output adalah seperti berikut:
{
  "Name": "John Doe",
  "Age": 30
}

Atas ialah kandungan terperinci Bagaimana untuk menghuraikan data JSON di Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn