簡體   English   中英

如何解析數組內的Json對象?

[英]How to parse Json objects inside array?

[{"conversation":{"id":"04d27d987de7f897580096b099815691cd4a89_ecf47fb8-cd72-4e5d-925c-5a63aa2fb315","wid":"04d27d987de7f897580096b099815691cd4a89","nicknames":{"owner":"Wiz_boltebony","originator":"Username123"},"group_token":"5a4b2b9d-ed39-4029-a76e-347a8c99806b"}},{"conversation":{"id":"05043a6393ec32806194414f2239a8697fa788_ecf47fb8-cd72-4e5d-925c-5a63aa2fb315","wid":"05043a6393ec32806194414f2239a8697fa788","nicknames":{"owner":"Summer_Reflection","originator":"Wiz_boltebony"},"group_token":"0b77eb02-aa57-4811-91fd-5fa61997b6a0"}}]

我想從這個json“數組”中解析出所有(group_token“:” 0b77eb02-aa)... etc值。

這是我的代碼:

dynamic j = JsonConvert.DeserializeObject(contents);
foreach (var c in j[0]["conversation"])
{
    Console.WriteLine(c["group_token"]);
}

這是有關JSON布局的圖片: http : //gyazo.com/5840a31b71d4cbea626899030debe5d8

我的代碼根本不起作用! 我該如何提取這些group_token值?

您需要稍微更改代碼(通過對象而不是屬性進行迭代);

dynamic j = JsonConvert.DeserializeObject(contents);
foreach (var c in j)
    Console.WriteLine(c["conversation"]["group_token"]);

您當前的代碼遍歷第一個conversation對象的屬性,並嘗試獲取每個屬性的group_token子級,這是錯誤的。

您也可以在下面嘗試。 完全同意@Ulugbek Umirov

var _jArr = (JArray)JsonConvert.DeserializeObject(contents);
IEnumerable<string> _groupToken = _jArr.Select(conv => conv["conversation"]["group_token"].ToString());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM