关于json解析的有关问题
关于json解析的问题
{"code":"00",
"id":{"num":"0","istarget":"false"},
"mail":{"num":"1","istarget":"true"},
"cell":{"num":"1","istarget":"false"},
"name":{"num":0},
"addr":{"num":1},
"commodity":{},
"media":{"财经":{"num":"2.0"},"历史/社会/人文":{"num":"1.0"},"科学/教育":{"num":"2.0"}},
"ec":{"3C 数码": {"num": "9","level1": "0.6183662429189318","price": "536.2"},
"运动娱乐": {"num": "284","level1": "0.9798223497689971","price": "2746.9"}}
}
请问怎么解析这个json,上面的能读出来,但是media和ec这两个不知道怎么建类
我用的DataContractJsonSerializer
------解决方案--------------------
刚好最近写了篇博客
http://blog.csdn.net/qq807081817/article/details/37919339
------解决方案--------------------
fastCSharp
------解决方案--------------------
这个应该是你想要的
{"code":"00",
"id":{"num":"0","istarget":"false"},
"mail":{"num":"1","istarget":"true"},
"cell":{"num":"1","istarget":"false"},
"name":{"num":0},
"addr":{"num":1},
"commodity":{},
"media":{"财经":{"num":"2.0"},"历史/社会/人文":{"num":"1.0"},"科学/教育":{"num":"2.0"}},
"ec":{"3C 数码": {"num": "9","level1": "0.6183662429189318","price": "536.2"},
"运动娱乐": {"num": "284","level1": "0.9798223497689971","price": "2746.9"}}
}
请问怎么解析这个json,上面的能读出来,但是media和ec这两个不知道怎么建类
我用的DataContractJsonSerializer
------解决方案--------------------
刚好最近写了篇博客
http://blog.csdn.net/qq807081817/article/details/37919339
private void button1_Click(object sender, EventArgs e)
{
string json = System.IO.File.ReadAllText(@"C:\Users\Administrator\Desktop\1.txt", Encoding.Default);
string value;
Helper.Json.GetValue(json, "media", out value);
this.textBox1.Text = value;
}
private void button1_Click(object sender, EventArgs e)
{
string json = System.IO.File.ReadAllText(@"C:\Users\Administrator\Desktop\1.txt", Encoding.Default);
string value;
Helper.Json.GetValue(json, "media", out value);
Helper.Json.GetValue(value, "财经", out value);
this.textBox1.Text = value;
}
------解决方案--------------------
fastCSharp
using fastCSharp;
class X
{
string code;
public nameNum[] Media;
fastCSharp.setup.cSharp.json.node media
{
set { Media = value.Dictionary.getArray(node => nameNum.Get(node)); }
}
public nameNum[] Ec;
fastCSharp.setup.cSharp.json.node ec
{
set { Ec = value.Dictionary.getArray(node => nameNum.Get(node)); }
}
}
class nameNum
{
string name;
string num;
string level1;
string price;
internal static nameNum Get(KeyValuePair<subString, fastCSharp.setup.cSharp.json.node> node)
{
nameNum value = fastCSharp.setup.cSharp.json.parse.Get<nameNum>(node.Value);
value.name = node.Key;
return value;
}
}
X value = fastCSharp.setup.cSharp.json.parse.Get<X>(json);
------解决方案--------------------
[DataMember(Name="历史/社会/人文")]
public string *
这个应该是你想要的