我已经为一个API创建了一个结构,我从中获得了总价。这个数字类似于93.640000000000000005684341886080801486968994140625 我已经在结构中将其类型设置为float64,但是当访问数据时,一旦它被解析到结构中,数字就会变成2664或完全错误的东西,以数千为单位。是我使用的错误类型还是其他东西?
1 回答
千巷猫影
TA贡献1829条经验 获得超7个赞
不确定您做了什么来获取数据,但此代码以精确的精度获取数据
package main
import (
"encoding/json"
"fmt"
)
type Bill struct {
Total float64 `json:"total"`
}
func main() {
data := []byte(`{"total": 93.6400000000000005684341886080801486968994140625}`)
var b Bill
err := json.Unmarshal(data, &b)
if err != nil {
panic(err)
}
fmt.Printf("%.100f", b.Total)
}
- 1 回答
- 0 关注
- 75 浏览
添加回答
举报
0/150
提交
取消