c# Newtonsoft.Json 有类似Java Jackson 里 JsonNode的对像吗

c# Newtonsoft.Json 有类似Java Jackson 里 JsonNode的对像吗?
JToken是用来做什么的?

阅读 6.1k
1 个回答

Newtonsoft Json 里,JObject 表示是一个对象,JArray 表示一个数组,这两个都是复合性元素,所以从 JContainer 继承。另外一些非复合性的,比如字符串、数、布尔等,用 JValue 表示。而 JContainerJValue 都从 JToken 继承。所以 JTokenJsonNode 所表示的东西应该相当。

如果你说的 JsonNode 是 Java Jackson 里的 org.codehaus.jackson.JsonNode,那么 JsonNode 里的大部分方法应该都可以在 JToken 中找到对应的(没实验,自己可以试试),比如

JsonNode.asInt 对应 JToken.Value<int>
JsonNode.asText 对应 JToken.Value<string>

关键看你想干啥,再找具体的方法。两个不同的库,甚至连语言都不同,肯定还是有较大的差异,不可以百分之百的按原流程翻译。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进