如何解析JSON.NET中的匿名数组?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解析JSON.NET中的匿名数组?相关的知识,希望对你有一定的参考价值。

我有一个JSON字符串,我已经解析了。一个特定属性是类似于以下的数组:

[[1537488000000,50500],[1537574400000,54028],[1537660800000,60447],[1537747200000,60542]]

以上是JSON字符串,但上面的内容包含在JToken对象中。

如何将JToken值解析为具体类的实例?

答案

您可以将其反序列化为2d数组:

JsonConvert.DeserializeObject<long[][]>("[[1537488000000,50500],[1537574400000,54028],[1537660800000,60447],[1537747200000,60542]]")

或者,作为锯齿状的2d,然后将其转换为长长的字典:

JsonConvert.DeserializeObject<long[][]>("[[1537488000000,50500],[1537574400000,54028],[1537660800000,60447],[1537747200000,60542]]")
    .ToDictionary(x => x[0], x => x[1])

如果你收到这个作为JToken,请改用:

JToken token = ...   
token
    .ToObject<long[][]>()
    .ToDictionary(x => x[0], x => x[1]);

以上是关于如何解析JSON.NET中的匿名数组?的主要内容,如果未能解决你的问题,请参考以下文章

使用Newtonsoft.Json.dll(JSON.NET)动态解析JSON.net 的json的序列化与反序列化

如何使用 JSON.net 解析 JSON 文件

如何从 JSON.NET 的 JsonArray 中提取单个数组成员?

获取数组 JSON.Net 的长度

如何使用与 NewtonSoft (JSON.Net) 组件中的 JSON 匹配的 Swift 类从/向 JSON 读取/写入对象数组?

如何在JSON.NET中读取json对象值中的long值数组