{"sign":1,"data":{"12400000":{"role_id":12400000,"role_name":"s1.\u8863\u53ca\u6cab","role_level":2}
,"12400001":{"role_id":12400001,"role_name":"s2.\u8863\u53ca\u6cab","role_level":2}}}
我想用C#得到sign的1,role_id:12400000和role_name的s1 ,这个的时候要先循环如果我传来的值比如:s2就把role_name对应的s2.\u8863\u53ca\u6cab的点前面的s2取出来,得到这个里面的role_id的值
------解决方案--------------------------------------------------------
foreach
------解决方案--------------------------------------------------------
你可以利用JSON解析类,将你传来的JSON格式数据解析成对应的类,然后通过访问类的属性来得到其值
http://www.cnblogs.com/xfrog/archive/2010/04/07/1706754
------解决方案--------------------------------------------------------
先把你的生成这段json的代码贴出来看看
------解决方案--------------------------------------------------------
晕 这段JSON怎么来的 形成的过程 不是要结果
------解决方案--------------------------------------------------------
你自己先建立一个结构,把这代码用jss或者letJSON反序列化下就好了
------解决方案--------------------------------------------------------
问接口商要
------解决方案--------------------------------------------------------
你去下一个json的C#反序列化的例子,一看就懂了。如果你不去看他是怎么序列化的很那去反序列化
------解决方案--------------------------------------------------------
http://www.cnblogs.com/zhaozhan/archive/2011/01/09/1931340
- C# code
JavaScriptSerializer jss = new JavaScriptSerializer();
------解决方案--------------------------------------------------------
- C# code
public static void Main() { string json = "{\"sign\":1,\"data\":"+ "{\"12400000\":{\"role_id\":12400000,\"role_name\":\"s1.\u8863\u53ca\u6cab\",\"role_level\":2}" + ",\"12400001\":{\"role_id\":12400001,\"role_name\":\"s2.\u8863\u53ca\u6cab\",\"role_level\":2}"+ ",\"12400002\":{\"role_id\":12400000,\"role_name\":\"s1.\u8863\u53ca\u6cab\",\"role_level\":2}}}"; var o = JObject.Parse(json); foreach (JToken child in o["data"].Children()) { foreach (JToken grandChild in child) { if (grandChild["role_name"].ToString().StartsWith("s2.")) { Console.WriteLine(grandChild["role_id"].ToString()); } } } Console.ReadLine(); }
------解决方案--------------------------------------------------------
sorry,忘了还要判断12400001
- C# code
public static void Main() { string json = "{\"sign\":1,\"data\":"+ "{\"12400000\":{\"role_id\":12400000,\"role_name\":\"s1.\u8863\u53ca\u6cab\",\"role_level\":2}" + ",\"12400001\":{\"role_id\":12400001,\"role_name\":\"s2.\u8863\u53ca\u6cab\",\"role_level\":2}"+ ",\"12400002\":{\"role_id\":12400000,\"role_name\":\"s1.\u8863\u53ca\u6cab\",\"role_level\":2}}}"; var o = JObject.Parse(json); foreach (JToken child in o["data"].Children()) { var property = child as JProperty; if (property.Name.Equals("12400001")) { foreach (JToken grandChild in child) { if (grandChild["role_name"].ToString().StartsWith("s2.")) { Console.WriteLine(grandChild["role_id"].ToString()); } } } } Console.ReadLine(); }