private void ShowDictionary(JSONObject InObj) { if (InObj.IsArray) { for (int i = 0; i < InObj.Array.Length;i++ ) { ShowDictionary(InObj.Array[i]); } } else { foreach (KeyValuePair<string, JSONObject> item in InObj.Dictionary) { if (InObj.Dictionary[item.Key].IsDictionary) { Console.WriteLine(string.Format("{0}: - Dictionary [", item.Key)); ShowDictionary(InObj.Dictionary[item.Key]); Console.WriteLine("]"); } else if (InObj.Dictionary[item.Key].IsArray) { Console.WriteLine(string.Format("{0}: - Array[{1}] [", item.Key, InObj.Dictionary[item.Key].Array.Length)); ShowDictionary(InObj.Dictionary[item.Key]); Console.WriteLine("]"); } else { Console.WriteLine(string.Format("{0}: {1}", item.Key, InObj.Dictionary[item.Key].String)); } } } }123
網頁
▼
Wednesday, January 19, 2011
[C#] 遞迴取得多層Dictionary內的資料
這段code是以前在拉facebook資料時用的,Facebook C# SDK裡提供的JSONObject是一個由Array, Dictionary...等所組成的樹狀結構,由於取得的內容結構不定,所以只能用遞迴的方式將裡面的值拉出來,因為以後也許用的到所以貼上來記錄一下。
No comments:
Post a Comment