是否可以只使用Json.net从流中读取第一个Json数组元素?

时间:2015-02-04 00:59:23

标签: json json.net

var serializer = new JsonSerializer();

using (var sr = new StreamReader(await blob.OpenReadAsync()))
using (var jsonTextReader = new JsonTextReader(sr))
{
    var axyz = JToken.ReadFrom(jsonTextReader); 
    if(axyz.Type != JTokenType.Array)
    {

    }
}

有没有办法用json.net读取数组的第一个元素。 json文件非常大,我只需要第一个元素。

1 个答案:

答案 0 :(得分:0)

您可以利用JSON#,它专门用于从大型JSON文件中提取嵌入式JSON对象,使用以下内容:

const string jsonText= @"{ "someObject": {...";
var jsonParser = new JsonObjectParser();

using (var stream = 
    new MemoryStream(Encoding.UTF8.GetBytes(jsonText))) {
    Json.Parse(_jsonParser, stream, "myFirstObject");
}

查看this post和后续教程系列了解更多信息。

相关问题