json解析详解

  1. package demo;


  2. import net.sf.json.JSONArray;
  3. import net.sf.json.JSONObject;


  4. /*
  5.  * {
  6.     "error": 0,
  7.     "status": "success",
  8.     "results": [
  9.         {
  10.             "currentCity": "青岛",
  11.             "index": [
  12.                 {
  13.                     "title": "穿衣",
  14.                     "zs": "较冷",
  15.                     "tipt": "穿衣指数",
  16.                     "des": "建议着厚外套加毛衣等服装。年老体弱者宜着大衣、呢外套加羊毛衫。"
  17.                 },
  18.                 {
  19.                     "title": "紫外线强度",
  20.                     "zs": "中等",
  21.                     "tipt": "紫外线强度指数",
  22.                     "des": "属中等强度紫外线辐射天气,外出时建议涂擦SPF高于15、PA+的防晒护肤品,戴帽子、太阳镜。"
  23.                 }
  24.             ]


  25.         }
  26.     ]
  27. }
  28.  * 
  29.  * */
  30. public class JsonTest1 {


  31. public static void main(String[] args) {
  32. String str = " {\"error\":0,\"status\":\"success\",\"results\":[{\"currentCity\":\"青岛\" "
  33. + " ,\"index\":[{\"title\":\"穿衣\",\"zs\":\"较冷\",\"tipt\":\"穿衣指数\",\"des\":\"建议着厚外套加毛衣等服装。年老体弱者宜着大衣、呢外套加羊毛衫。\"},{  "
  34. + " \"title\":\"紫外线强度\",\"zs\":\"中等\",\"tipt\":\"紫外线强度指数\",\"des\":\"属中等强度紫外线辐射天气,外出时建议涂擦SPF高于15、PA+的防晒护肤品,戴帽子、太阳镜。\"}]}]}  ";
  35.     //字符串转为jsonObject
  36.     JSONObject jsonObject = JSONObject.fromObject(str);
  37.     //提取error
  38. int error = jsonObject.getInt("error");
  39. System.out.println("error:" + error);
  40. //提取status
  41. String status = jsonObject.getString("status");
  42. System.out.println("status:" + status );
  43. //results 中的内容带有中括号[],所以要转化为JSONArray类型的对象
  44. JSONArray results = jsonObject.getJSONArray("results");
  45. System.err.println("result" + results );
  46. for(int i = 0 ;i<results.size();i++){
  47. String currentCity = results.getJSONObject(i).getString("currentCity");
  48. System.out.println("currentCity :" + currentCity);
  49. //index 中的内容带有中括号[],所以要转化为JSONArray类型的对象
  50. JSONArray indexs =  results.getJSONObject(i).getJSONArray("index");
  51. System.err.println("index:" + indexs);
  52. for(int j = 0 ;j <indexs.size();j++){
  53. String title = indexs.getJSONObject(j).getString("title");
  54. System.out.println("title:" + title);
  55. String zs = indexs.getJSONObject(j).getString("zs");
  56. System.out.println("zs:" + zs);
  57. String tipt = indexs.getJSONObject(j).getString("tipt");
  58. System.out.println("tipt:" + tipt);
  59. String des = indexs.getJSONObject(j).getString("des");
  60. System.out.println("des:" + des);
  61. }
  62. }
  63. }
  64. }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值