/*********************************************************************** * C# parser JSON get Key and value * 说明: * 将配置放置在JSON文件中,经过Json.NET来解析JSON数据,因为配置是随时 * 可能被改变,并且key也不是固定的,因此须要动态获取key、value来判断要怎么 * 进行处理,不过在解析的时候发现JToken不能直接获取到Key、Value,经过JObject * 来进行获取。 * * 2017-8-7 深圳 龙华樟坑村 曾剑锋 **********************************************************************/ 1、参考文档: 1、NuGet Package Manager UI https://docs.microsoft.com/zh-cn/nuget/tools/package-manager-ui 2、Introduction http://www.newtonsoft.com/json/help/html/Introduction.htm 3、Read JSON from a file http://www.newtonsoft.com/json/help/html/ReadJson.htm 4、Getting the name / key of a JToken with JSON.net https://stackoverflow.com/questions/21002297/getting-the-name-key-of-a-jtoken-with-json-net?answertab=votes 5、C# Newtonsoft.Json之LINQ To Json实例(一) http://blog.csdn.net/u011127019/article/details/52486867 6、使用JSON.net获取JToken的名称/键 https://gxnotes.com/article/90134.html 2、Demo Code: using Newtonsoft.Json.Linq; ... JObject systemConfig = JObject.Parse(File.ReadAllText("config/system_config.json")); foreach (JToken item in systemConfig["display"]["resolution"]) { Console.WriteLine(item.ToString()); // 从新合成JObject对象来提取Key、Value JObject obj = JObject.Parse("{" + item.ToString() + "}"); foreach(var pair in obj) { Console.WriteLine(pair.Key + "," + pair.Value); } }