首页 > C#解析json数据,如何通过下标值读取?

C#解析json数据,如何通过下标值读取?

关于Newtonsoft读取json数据,在网上看到的都是使用JsonTextReader,然后,通过while循环读取出来。
如以下代码:

string json = @"{
   'CPU': 'Intel',
   'PSU': '500W',
   'Drives': [
     'DVD read/writer'
     /*(broken)*/,
     '500 gigabyte hard drive',
     '200 gigabype hard drive'
   ]
}";

JsonTextReader reader = new JsonTextReader(new StringReader(json));
while (reader.Read())
{
    if (reader.Value != null)
        Console.WriteLine("Token: {0}, Value: {1}", reader.TokenType, reader.Value);
    else
        Console.WriteLine("Token: {0}", reader.TokenType);
}

// Token: StartObject
// Token: PropertyName, Value: CPU
// Token: String, Value: Intel
// Token: PropertyName, Value: PSU
// Token: String, Value: 500W
// Token: PropertyName, Value: Drives
// Token: StartArray
// Token: String, Value: DVD read/writer
// Token: Comment, Value: (broken)
// Token: String, Value: 500 gigabyte hard drive
// Token: String, Value: 200 gigabype hard drive
// Token: EndArray
// Token: EndObject

这种方法不够灵活,比如,我想这样使用:

if(reader[2]=="")  
    return;

就是想通过下标先对json数据进行读取,而不是遍历一遍。
这是官方文档:http://james.newtonking.com/json/help/index.html#

【热门文章】
【热门文章】