json用c#解析求助,数组里面的值我该如何获取呢?

班长老六哥 2015-12-15 02:00:55
   
request.Timeout = 5000;
request.Method = "GET";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader sr = new StreamReader(response.GetResponseStream());
string jsonstr = sr.ReadLine();
JavaScriptSerializer j = new JavaScriptSerializer();
Weather weather = new Weather();
weather = j.Deserialize<Weather>(jsonstr);

public class Weather
{

public string error;
public string status;
public string date;
}

我用weather类获取error,status,date的值,results数组里面的值我该如何获取呢?


{"error":0,"status":"success","date":"2015-12-15","results":[{"currentCity":"北京","pm25":"68","index":[{"title":"穿衣","zs":"冷","tipt":"穿衣指数","des":"天气冷,建议着棉服、羽绒服、皮夹克加羊毛衫等冬季服装。年老体弱者宜着厚棉衣、冬大衣或厚羽绒服。"},{"title":"洗车","zs":"较不宜","tipt":"洗车指数","des":"较不宜洗车,未来一天无雨,风力较大,如果执意擦洗汽车,要做好蒙上污垢的心理准备。"},{"title":"旅游","zs":"一般","tipt":"旅游指数","des":"天气较好,温度稍低,加之风稍大,让人感觉有点凉,会对外出有一定影响,外出注意防风保暖。"},{"title":"感冒","zs":"较易发","tipt":"感冒指数","des":"虽然温度适宜但风力较大,仍较易发生感冒,体质较弱的朋友请注意适当防护。"},{"title":"运动","zs":"较不宜","tipt":"运动指数","des":"天气较好,但考虑天气寒冷,风力较强,推荐您进行室内运动,若户外运动请注意保暖并做好准备活动。"},{"title":"紫外线强度","zs":"弱","tipt":"紫外线强度指数","des":"紫外线强度较弱,建议出门前涂擦SPF在12-15之间、PA+的防晒护肤品。"}],"weather_data":[{"date":"周二 12月15日 (实时:3)","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/qing.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/qing.png","weather":"晴","wind":"北风4-5级","temperature":"4 ~ -3"},{"date":"周三","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/qing.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/qing.png","weather":"晴","wind":"北风4-5级","temperature":"2 ~ -7"},{"date":"周四","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/qing.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/qing.png","weather":"晴","wind":"微风","temperature":"3 ~ -6"},{"date":"周五","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/qing.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/qing.png","weather":"晴","wind":"微风","temperature":"5 ~ -5"}]}]}
...全文
489 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
正怒月神 2015-12-15
  • 打赏
  • 举报
回复
赋值json数据, vs里,编辑--选择性黏贴--将json数据黏贴为类。 就会生成一个 Model了, 然后调用 Newtonsoft.dll组件就好了
  • 打赏
  • 举报
回复
http://blog.csdn.net/starfd/article/details/48686239 json字符串复制进去自动帮你生成反序列化类,你只要稍微修改下就行
本拉灯 2015-12-15
  • 打赏
  • 举报
回复
用VS2013 只要两秒就能搞定下面的句子 第一步复制

{"error":0,"status":"success","date":"2015-12-15","results":[{"currentCity":"北京","pm25":"68","index":[{"title":"穿衣","zs":"冷","tipt":"穿衣指数","des":"天气冷,建议着棉服、羽绒服、皮夹克加羊毛衫等冬季服装。年老体弱者宜着厚棉衣、冬大衣或厚羽绒服。"},{"title":"洗车","zs":"较不宜","tipt":"洗车指数","des":"较不宜洗车,未来一天无雨,风力较大,如果执意擦洗汽车,要做好蒙上污垢的心理准备。"},{"title":"旅游","zs":"一般","tipt":"旅游指数","des":"天气较好,温度稍低,加之风稍大,让人感觉有点凉,会对外出有一定影响,外出注意防风保暖。"},{"title":"感冒","zs":"较易发","tipt":"感冒指数","des":"虽然温度适宜但风力较大,仍较易发生感冒,体质较弱的朋友请注意适当防护。"},{"title":"运动","zs":"较不宜","tipt":"运动指数","des":"天气较好,但考虑天气寒冷,风力较强,推荐您进行室内运动,若户外运动请注意保暖并做好准备活动。"},{"title":"紫外线强度","zs":"弱","tipt":"紫外线强度指数","des":"紫外线强度较弱,建议出门前涂擦SPF在12-15之间、PA+的防晒护肤品。"}],"weather_data":[{"date":"周二 12月15日 (实时:3)","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/qing.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/qing.png","weather":"晴","wind":"北风4-5级","temperature":"4 ~ -3"},{"date":"周三","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/qing.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/qing.png","weather":"晴","wind":"北风4-5级","temperature":"2 ~ -7"},{"date":"周四","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/qing.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/qing.png","weather":"晴","wind":"微风","temperature":"3 ~ -6"},{"date":"周五","dayPictureUrl":"http://api.map.baidu.com/images/weather/day/qing.png","nightPictureUrl":"http://api.map.baidu.com/images/weather/night/qing.png","weather":"晴","wind":"微风","temperature":"5 ~ -5"}]}]}
然后在VS2013随便找个cs文件 ,点菜单->编辑->选择性粘贴->将JSON粘贴为类 此时你会发现神奇的事情发生了。。。。 相信好多人都没用此功能。。。 public class Rootobject { public int error { get; set; } public string status { get; set; } public string date { get; set; } public Result[] results { get; set; } } public class Result { public string currentCity { get; set; } public string pm25 { get; set; } public Index[] index { get; set; } public Weather_Data[] weather_data { get; set; } } public class Index { public string title { get; set; } public string zs { get; set; } public string tipt { get; set; } public string des { get; set; } } public class Weather_Data { public string date { get; set; } public string dayPictureUrl { get; set; } public string nightPictureUrl { get; set; } public string weather { get; set; } public string wind { get; set; } public string temperature { get; set; } }
Poopaye 2015-12-15
  • 打赏
  • 举报
回复
public class Weather
{   
    public string error;
    public string status;
    public string date;
    public List<Result> results;
}

public class Result
{
      public string currentCity,
      .........

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧