C# parser JSON get Key and value

/***********************************************************************
 *               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);
        }
    }
相關文章
相關標籤/搜索