解析json获取天气信息(中央气象台)
更新:HHH   时间:2023-1-7


 

  1. private String b; 
  2. new Thread(new Runnable() { 
  3.             public void run() { 
  4.                  String aconnServerForResult("http://m.weather.com.cn/data/101090101.html"); 
  5.                 final String v"石家庄?"+parseJson(a); 
  6.                 System.out.println("zheliv"+v); 
  7.                 tq.post(new Runnable(){ 
  8.                     public void run(){ 
  9.                         tq.setText(v.replace("?","\n"));      
  10.                         System.out.println("zheliv"+v); 
  11.                     }});}}).start();} 
  12.    private String connServerForResult(String strUrl) { 
  13.     //获取HttpGet对象 
  14.     HttpGet httpRequest = new HttpGet(strUrl); 
  15.     String strResult = ""
  16.     try { 
  17.     // HttpClient对象 
  18.     HttpClient httpClient = new DefaultHttpClient(); 
  19.     // 获得HttpResponse对象 
  20.     HttpResponse httpResponse = httpClient.execute(httpRequest); 
  21.     if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { 
  22.     // 取得返回的数据 
  23.     strResult = EntityUtils.toString(httpResponse.getEntity()); 
  24.     System.out.println("zheli"); 
  25.     } 
  26.     } catch (ClientProtocolException e) { 
  27.     e.printStackTrace(); 
  28.     } catch (IOException e) { 
  29.     e.printStackTrace(); 
  30.     } 
  31.     Log.i("Infor", strResult); 
  32.     return strResult; //返回结果 
  33.     } 
  34.     //对于返回的结果我们通过Json解析工具进行解析。下面是解析函数的代码,其参数就是要解析的Json格式数据字符串。 
  35.  private String parseJson(String strResult) { 
  36.     try { 
  37.     JSONObject jsonObj = new JSONObject(strResult).getJSONObject("weatherinfo"); 
  38.      b =jsonObj.getString("temp1"); //当前日期 
  39.     //dayofweekjsonObj.getString("week"); //当前星期 
  40.     //city.setText(jsonObj.getString("city")); //城市名称 
  41.     //ftimejsonObj.getInt("fchh"); //更新时间(整点)【更新时间确定temp1属于哪天】 
  42.      //由于数据较多此处省略了部分代码,其他数据解析方法相同,大家可以照葫芦画瓢。 
  43.     System.out.println("zhelinn"); 
  44.     } catch (JSONException e) { 
  45.     Log.i("Erorr","Json parse error"); 
  46.     e.printStackTrace();} 
  47.     System.out.println("zheli  v"+b); 
  48.         return b; 
  49.  }} 
  50. //时间紧张,就读取了一个字符串,其他雷同
     

 

返回开发技术教程...