有没有办法指定JToken
的类型是double
类型还是long
类型?我注意到https://github.com/JamesNK/Newtonsoft.Json/blob/master/Src/Newtonsoft.Json/Linq/JTokenType.cs只支持integer
和float
,并且想知道人们如何处理更高精度的案例。
答案 0 :(得分:3)
JSON不区分double
和float
。它甚至不能真正区分整数和非整数 - 它们只是数字。
但JsonTokenType.Float
并不意味着表示System.Single
- 它是"浮点数"。同样地,JsonTokenType.Integer
并不表示System.Int32
- 它是"一个整数"。
有关此示例,请查看JValue
:
long
的构造函数将令牌类型设置为Integer
double
的构造函数将令牌类型设置为Float
decimal
的构造函数将令牌类型设置为Float