我正在生成一个json对象,
{ "number":0100 }
当使用Newtonsoft.Json在C#中反序列化此对象时,由于前导零,因此将 0100 视为八进制数。有没有一种方法可以覆盖此功能,并将其视为十进制整数?
我已经看过了JsonTextReader.ParseNumber()(读数字的“魔术”发生的方法)。我会说这是行不通的。八进制情况特别处理
JsonTextReader.ParseNumber()
bool flag2 = c == '0' ...
然后
long value2 = text2.StartsWith("0x", StringComparison.OrdinalIgnoreCase) ? Convert.ToInt64(text2, 16) : Convert.ToInt64(text2, 8); // Here OCTAL!!!
我没有找到任何方法来覆盖此方法(除了重写 所有 在Json解析Read()中执行所有操作的方法) __
Read()