如何解析Windows Phone中的JSON?
问题描述:
我想解析this page如何解析Windows Phone中的JSON?
该页面有JSON数据是这样的:
{"List":[{"num":"1","name":"hello","ox_score":"30","between_score":"30","order_score":"30","total_score":"90"}]}
我尝试下面的代码(我用JSON.NET
),但我是concerend关于“清单”,我也试过JArray。和... o [“列表”] [“名称”]但我无法得到正确的结果。下面的代码也返回空消息。 请帮我一把。
代码
public void connection()
{
string uriString = "http://kah601.cafe24.com/jp_mango_loadboard.php";
WebClient wc = new WebClient();
wc.Headers["Accept"] = "application/json";
wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted);
wc.DownloadStringAsync(new Uri(uriString));
}
void wc_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
JObject o = JObject.Parse(e.Result);
String name = (string) o["name"];
String ox_score = (string) o["ox_score"];
String between_score = (string) o["between_score"];
String order_score = (string) o["order_score"];
String total_score = (string) o["total_score"];
String rank_result = name + ox_score + between_score + order_score + total_score;
MessageBox.Show(rank_result);
}
答
给了它是一个列表,你应该指数JArray的元素。下面是一个示例代码来帮助你(注意[0] =>引用JArray的第一元素):
void wc_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
JObject o = JObject.Parse(e.Result);
JArray a = (JArray)o["List"];
Debug.WriteLine("{0}", (String)a[0]["name"]);
}
OMG !!!!!!!!!我真的很感激。它运作良好!我对json对象和数组感到困惑。谢谢! –
你可以接受答案,那样别人会有类似的问题将查找答案作为解决方案。欢迎来到StackOverflow :) –
可怜的辛迪金,你应该接受这个答案.. –