一般方法C#解析json:
如处理:
{"Name":"zhangsan","Age":15,"Sex":"male"};
此类json数组。
1.下载Newtonsoft.Json,在项目中引入。
在项目中加入 using Newtonsoft.Json;
2.根据要处理的json字符串创建C#类。这里也可以通过其他转换工具,把json字符串直接生成C#类
PS:需要处理的json复制到 http://json2csharp.chahuo.com/ 可以直接得到C#类。
public class RootObject
{
public string Name { get; set; }
public string Age { get; set; }
public string Sex { get; set; }
}
3.反序列化json字符串得到对象。
RootObject rb = JsonConvert.DeserializeObject<RootObject>(json);
4. 最后输出即可
string name = rb.Name;
string age = rb.Age;
string sex = rb.Sex;
C#解析json含数组:
如:
{
"id": "1",
"count": "100",
"data": [
"中国",
"福建",
"福州",
"电信",
]
}
1.在项目中加入 using Newtonsoft.Json.Linq;
2.反序列化json字符串得到对象。
JObject jo = (JObject)JsonConvert.DeserializeObject(json);
3.输出结果
int count = Convert.ToInt32(jo["item"]);
int count = Convert.ToInt32(jo["item"]);
//这里 item 为需要获取的项的名称 这里 item=count item=id
string value = jo[item][index].ToString();
//这里 index 如果获取的value为数组是时取得特定项