2014-10-09 51 views
0

我想打印一个JObject为CSV行打印单JSON对象为CSV在C#

例如:

{"result": { 
"id": "24095", 
"hostid": "24094", 
"name": "host1.fqdn.com", 
"ipaddress" : "192.168.1.184" 
} 
} 

id,hostid,name,ipaddress 
24095,24094,host1.fqdn.com,192.168.1.184 

我可以很容易通过对象迭代

foreach (var item in jobj) { 
    Console.Write(item.Key + ","); 
} 

,但我结束了一个,在所述报头

的端我试图

for (int i = 0; i < jobj.Count; i++)... 

但我无法存取i.Key。我在这里做错了,但我不知道是什么。

任何关于如何将对象中的所有按键都以CSV格式打印出来的想法?

谢谢。

回答

1

请尝试以下代码。

string result = string.Empty; 

foreach (var item in jobj) 
{ 
    if (!string.IsNullOrEmpty(result)) 
    { 
     result += ","; 
    } 
    result += item.Key; 
} 
Console.WriteLine(result); 
1

迭代除最后一个以外的所有数据,然后使用块之外的最后一个。

for (int i = 0; i < jobj.Count-1; i++) { 
    Console.Write(jobj[i].Key + ", "); 
} 

Console.WriteLine(jobj[jobj.Count-1].Key); 
+0

嗨。谢谢回答。我在迭代所有项目方面没有问题,但我只想获得关键字。不是价值。所以jobj [i] .key就是我以后的事情,但它不作为一个属性。 – anoopb 2014-10-09 05:32:52

+0

我不认识JObject,它是什么? – 2014-10-09 05:34:31