Rumah >pembangunan bahagian belakang >Golang >Bagaimana Mengendalikan Nilai Null Apabila Menghuraikan Data JSON int64 dalam Go?

Bagaimana Mengendalikan Nilai Null Apabila Menghuraikan Data JSON int64 dalam Go?

Patricia Arquette
Patricia Arquetteasal
2024-11-30 15:38:14202semak imbas

How to Handle Null Values When Parsing int64 JSON Data in Go?

JSON Penghuraian int64 dalam Go: Mengendalikan Nilai Null

Dalam Go, menghuraikan data JSON yang mengandungi nilai integer jenis int64 boleh memberikan cabaran apabila menghadapi nilai nol. Apabila menemui nilai null, pakej JSON lalai melemparkan ralat kerana ketidakupayaan untuk menyahmarshal null ke dalam int64.

Nullable int64 Type untuk JSON Parsing

Untuk mengatasi ini had, jenis int64 yang boleh dibatalkan diperlukan. Int64 yang boleh dibatalkan membenarkan sama ada nilai nil atau nilai int64 yang sah. Dengan menggunakan penuding dalam Go, kami mencapai kefungsian ini:

type NullableInt64 *int64

Apabila menggunakan penuding untuk jenis, ia boleh sama ada nil atau merujuk nilai int64.

Pelaksanaan

Memasukkan jenis int64 nullable ke dalam jenis yang lebih awal contoh:

package main

import (
    "encoding/json"
    "fmt"
)

var d = []byte(`{ "world":[{"data": 2251799813685312}, {"data": null}]}`)

type jsonobj struct{ World []World }
type World struct{ Data *int64 } // Using *int64 for nullable int64

func main() {
    var data jsonobj
    jerr := json.Unmarshal(d, &data)
    fmt.Println(jerr)
}

Pengubahsuaian ini membolehkan penghurai JSON berjaya mengendalikan nilai nol dalam medan "data" tanpa menghadapi ralat.

Atas ialah kandungan terperinci Bagaimana Mengendalikan Nilai Null Apabila Menghuraikan Data JSON int64 dalam Go?. 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