如何实现不将数字转换为双精度的 json 解码器?

How to implement a json decoder which doesn't convert numerics to double?

当我对从服务器返回的财务数据调用 json.decode 时,我想将我的数字转换为十进制(pub.dev 包)(或者甚至将它们保留为字符串以便我可以手动稍后再做)。我想正常转换的其他所有内容

有一个reviver回调传递给_parseJson(),但我找不到这个外部函数的实现来研究。

更新:

看起来 reviver() 来不及了:这里已经进行了基本转换,并且传入了双精度数。是否有任何可以使用的替代回调?

我会使用 jsontool 包(免责声明:我写了它,所以很明显这是我首先求助的)。 它是一个低级 JSON 处理器,允许您(并要求您)控制处理。

它有一个 example,它将数字解析为 BigInt。您可能会调整它以使用 Decimal 代替。