1
我有串行化JSON字符串成JObject下面的代碼示例(使用Newtonsoft Json.NET C#):查找路徑/ JToken的名稱空間中的Newtonsoft JObject
var obj = JObject.Parse("{\"F01\" : \"f01\", " +
"\"F02\" : \"f02\", " +
"\"L01\" : [" +
"{" +
"\"L01F01\" : \"l01f01\", " +
"\"L01F02\" : \"l01f02\"" +
"}, " +
"{" +
"\"L01F01\" : \"l01f01\", " +
"\"L01F02\" : \"l01f02\"" +
"}, " +
"{" +
"\"L01F03\" : \"l01f03\" " +
"}, " +
"{" +
"\"L01F03\" : \"l01f03\", " +
"\"L01L02\" : [" +
"{" +
"\"L01L02F01\" : \"l01l02f01\"" +
"}" +
"]" +
"}" +
"]" +
"}");
注意,JSON具有動態結構不是數組中的所有項都具有相同的名稱和屬性。
而且我提出以下JTokens:
var test01 = obj["F01"];
var test02 = obj["L01"][0]["L01F01"];
var test03 = obj["L01"][3]["L01L02"][0]["L01L02F01"];
我想知道,如果有人知道任何方式來獲得在這個測試變量的「路徑」類似的方式:
GetPathOf(test01) => "F01"
GetPathOf(test02) => "L01[0].L01F01"
GetPathOf(test03) => "L01[3].L01L02[0].L01L02F01"
謝謝!
相反方法通過使路徑到JToken得到一個嵌套JToken是使用myJToken.SelectObject(mypath中)。 [點擊](http://www.newtonsoft.com/json/help/html/M_Newtonsoft_Json_Linq_JToken_SelectToken.htm)。還有一些重載。 – huha