首頁 > 後端開發 > Golang > 如何在 Go 中處理 JSON 字串到 Float64 的轉換?

如何在 Go 中處理 JSON 字串到 Float64 的轉換?

Susan Sarandon
發布: 2025-01-04 21:22:43
原創
858 人瀏覽過

How to Handle JSON String to Float64 Conversion in Go?

使用 Float64 類型轉換解碼 JSON

在這種情況下,您有一個包含浮點數的 JSON 字串,需要將其解碼為 Golang 結構體。由於傳入的浮點數字串表示形式與結構中的 float64 類型不匹配,首次解碼嘗試失敗。

要解決此問題,需要指示 JSON 解碼器將字串值解釋為一個 float64。這可以透過將 ,string 標籤新增至結構定義中的 Price 欄位來實現:

type Product struct {
    Name  string
    Price float64 `json:",string"`
}
登入後複製

透過此修改,解碼器將成功將字串表示形式轉換為 float64 值。更新後的 Golang 程式碼:

package main

import (
    "encoding/json"
    "fmt"
)

type Product struct {
    Name  string
    Price float64 `json:",string"`
}

func main() {
    s := `{"name":"Galaxy Nexus", "price":"3460.00"}`
    var pro Product
    err := json.Unmarshal([]byte(s), &pro)
    if err == nil {
        fmt.Printf("%+v\n", pro)
    } else {
        fmt.Println(err)
        fmt.Printf("%+v\n", pro)
    }
}
登入後複製

執行此更新後的程式碼現在將輸出所需的結果:

{Name:Galaxy Nexus Price:3460}
登入後複製

以上是如何在 Go 中處理 JSON 字串到 Float64 的轉換?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板