JSON解析精度丢失问题(net.sf.json)

问题发生的场景:

json传递过来一个BigDecimal类型数据【545169.8113】,通过JSONObject.fromObject来将其转换为一个对象,在转换之后的对象数据中存储的数据已经丢失了变为【545169.8】丢失了部分精度。

使用的JAR包:net.sf.json


问题跟踪

追踪问题的根源,解析过程一直在这里面进行调用
-w1113
最后会nextValue拼接出一个【545169.8113】,这个时候还是正确的。
-w1392
-w1186

最后会将这个传入NumberUtils.createNumber方法,解析后就会是一个丢失精度的Float
-w992

我的解决办法是换了一个阿里的包【com.alibaba.fastjson】,个人觉得应该还有其他的解决办法通过jsonConfig来配置。等待下一步研究。

猜你喜欢

转载自www.cnblogs.com/Mr-GG/p/json-jie-xi-jing-du-diu-shi-wen-ti-netsfjson.html
今日推荐