[英]How can I Iterate through dynamic json c#?
我從api得到響應,但是此響應可以是任何類型的json。 我需要獲取數據並將其打印在csv上,是否有將json轉換為動態對象並進行迭代的方法,還是有其他方法可以實現?
我的json響應是:
{
"A":{
"B":[
{
"C":"data"
"E":"data"
"G":{
"H":[
{"I":"data"},
{...},
{...}
]
}
},
{...},
{...},
{...}
]
}
}
后者可能是
{
"A":{
"B":[
{
"C":"data"
"E":"data"
"G":{
"H":[
{"I":"data"},
{...},
{...},
{"K":[
{"w":"data"},
{...},
{...},
{"d":[
{"d":"data"},
{...},
{"d":[
{"h","data"},
{...},
{...}
]}
]}
]}
]
}
},
{...},
{...},
{...}
]
}
}
使用Cinchoo ETL-可用於解析json並將其轉換為CSV的開源庫
string json = @"
{
""name"":""John"",
""age"":30,
""cars"": {
""car1"":""Ford"",
""car2"":""BMW"",
""car3"":""Fiat"",
""Country"": [
""USA"",
""Mexico""
]
}
}";
StringBuilder csv = new StringBuilder();
using (var p = ChoJSONReader.LoadText(json)
.WithJSONPath("$")
)
{
using (var w = new ChoCSVWriter(csv)
.WithFirstLineHeader()
)
{
w.Write(p);
}
}
Console.WriteLine(csv.ToString());
輸出:
name,age,cars_car1,cars_car2,cars_car3,cars_Country_0,cars_Country_1
John,30,Ford,BMW,Fiat,USA,Mexico
免責聲明:我是這個圖書館的作者。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.