2017-05-05 18 views
0

主要我有一個JSON文件格式如下:如何獲取一個JSON文件與SimpleJson C#

{ 
    "3874D632": { 
    "FirstName": "Jack", 
    "LastName": "Andersen" 
    }, 
    "34F43A33": { 
    "FirstName": "John", 
    "LastName": "Smith" 
    } 

}

StreamReader read_json = new StreamReader(path_json_file); 

json = JSONNode.Parse(read_json.ReadToEnd()); 
read_json.Close(); 

如何獲取3874D632或34F43A33?

json[????]. 
+0

看一看在Unity3D維基:http://wiki.unity3d.com/index.php/SimpleJSON – elgonzo

回答

1

注:這個答案是指貼在UnifyWiki網站,這是不是與完全不同的SimpleJson library附帶作爲RestSharp部分相混淆的SimpleJSON library

如果JSONNode代表一個JSON對象,你可以將它轉換爲JSONObject,並從那裏你可以列舉像一本字典的鍵值對。每個鍵值對的Key將具有您要查找的值。見下面的例子:

string json = @" 
{ 
    ""3874D632"": { 
    ""FirstName"": ""Jack"", 
    ""LastName"": ""Andersen"" 
    }, 
    ""34F43A33"": { 
    ""FirstName"": ""John"", 
    ""LastName"": ""Smith"" 
    } 
}"; 

var node = JSONNode.Parse(json); 
if (node.Tag == JSONNodeType.Object) 
{ 
    foreach (KeyValuePair<string, JSONNode> kvp in (JSONObject)node) 
    { 
     Console.WriteLine(string.Format("{0}: {1} {2}", 
      kvp.Key, kvp.Value["FirstName"].Value, kvp.Value["LastName"].Value)); 

    } 
} 

輸出:

3874D632: Jack Andersen 
34F43A33: John Smith