最近,遇到了一些不同的Json格式的数据,需要做不同处理才能转化
为想要得到的结果,这里总结一下。
第一种形式:status中是{}形式
string json =
@"{'name':'语淺意
深','province':'32','city':'1','location':'江苏 南
京','status':{'created_at':'Thu Feb 26 21:04:34 +0800
2015','text':'哈哈'}}";
针对以上格式的数据,创建如下的两个结构体或类
复制代码
1 public struct Status
2 {
3 public string created_at { get; set; }
4 public string text { get; set; }
5 }
6
7 public struct JsonData
8 {
9 public string name { get; set; }
10 public string province { get; set; }
11 public string city { get; set; }
12 public string location { get; set; }
13 public Status status;
14 }
复制代码
输出结果:
1 JavaScriptSerializer jsSerializer=new
JavaScriptSerializer();
2 JsonData jd = jsSerializer.Deserialize<JsonData>
(json);
3 Response.Write(string.Format("name={0};province=
{1};city={2};location={3};status=
{4};",jd.name,jd.province,jd.city,jd.location,jd.status.crea
ted_at+jd.status.text));
第二种形式:status中是[]形式
string json =
@"{'name':'语淺意
深','province':'32','city':'1','location':'江苏 南
京','status':[{'created_at':'Thu Feb 26 21:04:34 +0800
2015','text':'哈哈'}]}";
针对以上格式的数据,创建如下的两个结构体或类
复制代码
1 public struct Status
2 {
3 public string created_at { get; set; }
4 public string text { get; set; }
5 }
6 public struct JsonData2
7 {
8 public string name { get; set; }
9 public string province { get; set; }
10 public string city { get; set; }
11 public string location { get; set; }
12 public List<Status> status;
13 }
复制代码
输出结果
1 JavaScriptSerializer jsSerializer=new
JavaScriptSerializer();
2 JsonData2 jd = jsSerializer.Deserialize<JsonData2>
(json);
3 Response.Write(string.Format("name={0};province=
{1};city={2};location={3};status=
{4};",jd.name,jd.province,jd.city,jd.locatio