golang json.Unmarshal 处理长整型变成float64
问题描述:
golang开发中,我们会用到json.Unmarshal 将[]byte数组反序列化回 struct。json.Unmarshal 在处理长整型的时候,因为处理精度不够,会把长整型转换成float64,最后导致数据显示不正确。
问题解决:
var jiter = jsoniter.Config{ EscapeHTML: false, MarshalFloatWith6Digits: true, // will lose precession ObjectFieldMustBeSimpleString: true, // do not unescape object field UseNumber: true, }.Froze()
设置 useNumber = true 这样 json.Unmarshal 能够正常处理长整型。
到此这篇关于“golang json.Unmarshal 处理长整型变成float64”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!您可能感兴趣的文章:
golang json.Unmarshal 处理长整型变成float64
golang 数学函数
golang结构体tag的使用
活学活用golang的反射机制
reflect笔记
Go语言中struct内部的反引号
【golang】结构体与json相互转换,map与json相互转换
2.GO语言之基本数据类型,运算符
golang 结构体的嵌入类型和接口
2020-10-14Go语言基本类型:整型、浮点型、字符串