Tôi cần giải mã một chuỗi JSON với số thực như:
{"name":"Galaxy Nexus", "price":"3460.00"}
Tôi sử dụng mã Golang bên dưới:
package main
import (
"encoding/json"
"fmt"
)
type Product struct {
Name string
Price float64
}
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)
}
}
Khi tôi chạy nó, nhận được kết quả:
json: cannot unmarshal string into Go value of type float64
{Name:Galaxy Nexus Price:0}
Tôi muốn biết cách giải mã chuỗi JSON với kiểu chuyển đổi.