一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術(shù)及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Android - Android編程實現(xiàn)獲取新浪天氣預報數(shù)據(jù)的方法

Android編程實現(xiàn)獲取新浪天氣預報數(shù)據(jù)的方法

2021-04-12 10:13越冬越酷 Android

這篇文章主要介紹了Android編程實現(xiàn)獲取新浪天氣預報數(shù)據(jù)的方法,涉及Android基于新浪接口的調(diào)用及數(shù)據(jù)處理技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了Android編程實現(xiàn)獲取新浪天氣預報數(shù)據(jù)的方法。分享給大家供大家參考,具體如下:

新浪天氣預報地址:

http://php.weather.sina.com.cn/xml.php?city=武漢&password=DJOYnieT8234jlsK&day=0

其中,city后的城市可用java.net.URLEncoder.encode(“武漢”,” gb2312”);也可以直接寫”武漢”,但不能用”wuhan”。Password固定

Day為0表示當天天氣,1表示第二天的天氣,2表示第三天的天氣,以此類推,最大為4。

工具類:

1、定義成員

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
/** 新浪天氣網(wǎng)址 */
public final String SINA_URL = "http://php.weather.sina.com.cn/xml.php";
/** 新浪天氣XML調(diào)用密碼 */
public final String PASSWORD = "DJOYnieT8234jlsK";
/** 城市 */
public String city;
/** 白天天氣 */
public String status1;
/** 夜晚天氣 */
public String status2;
/** 白天天氣 拼音 */
public String figure1;
/** 夜晚天氣拼音 */
public String figure2;
/** 白天風向 */
public String direction1;
/** 夜晚風向 */
public String direction2;
/** 白天風級 */
public String power1;
/** 夜晚風級 */
public String power2;
/** 白天溫度 */
public String temperature1;
/** 夜晚溫度 */
public String temperature2;
/** 體感溫度 */
public String tgd;
/** 紫外線指數(shù) */
public String zwx_l;
/** 紫外線說明 */
public String zwx_s;
/** 體感度指數(shù) */
public String ssd_l;
/** 體感度說明 */
public String ssd_s;
/** 空調(diào)指數(shù) */
public String ktk_l;
/** 空調(diào)說明 */
public String ktk_s;
/** 洗車指數(shù) */
public String xcz_l;
/** 洗車說明 */
public String xcz_s;
/** 穿衣指數(shù) */
public String chy_l;
/** 穿衣說明 */
public String chy_shuoming;
/** 污染物擴散條件 */
public String pollution_l;
/** 污染物擴散條件說明 */
public String pollution_s;
/** 感冒指數(shù) */
public String gm_l;
/** 感冒說明 */
public String gm_s;
/** 運動指數(shù) */
public String yd_l;
/** 運動說明 */
public String yd_s;

2、獲取天氣數(shù)據(jù)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/**
* 更新天氣
*
* @param city
*   城市名
* @param day
*   0表示當天天氣,1表示第二天的天氣,2表示第三天的天氣,以此類推,最大為4
*/
public void UpdateWeatherInfo(String city, String day) {
  if (city.equals("")) {
   isLoaded = false;
   return;
  }
  String html = null;
  try {
   html = doGet(SINA_URL + "?city="
     + java.net.URLEncoder.encode(city, "gb2312") + "&password="
     + PASSWORD + "&day=" + day);
   Document doc = Jsoup.parse(html);
   if (doc.body().getElementsByTag("Profiles").size() == 0) {
    isLoaded = false;
    return;
   }
   if (doc.body().getElementsByTag("Profiles").get(0).getElementsByTag("Weather").size() == 0) {
    isLoaded = false;
    return;
   }
   Element element = doc.body().getElementsByTag("Profiles").get(0)
     .getElementsByTag("Weather").get(0);
   this.city = element.getElementsByTag("city").text();
   status1 = element.getElementsByTag("status1").text();
   status2 = element.getElementsByTag("status2").text();
   figure1 = element.getElementsByTag("figure1").text();
   figure2 = element.getElementsByTag("figure2").text();
   direction1 = element.getElementsByTag("direction1").text();
   direction2 = element.getElementsByTag("direction2").text();
   power1 = element.getElementsByTag("power1").text();
   power2 = element.getElementsByTag("power2").text();
   temperature1 = element.getElementsByTag("temperature1").text();
   temperature2 = element.getElementsByTag("temperature2").text();
   tgd = element.getElementsByTag("tgd").text();
   zwx_l = element.getElementsByTag("zwx_l").text();
   zwx_s = element.getElementsByTag("zwx_s").text();
   ssd_l = element.getElementsByTag("ssd_l").text();
   ssd_s = element.getElementsByTag("ssd_s").text();
   ktk_l = element.getElementsByTag("ktk_l").text();
   ktk_s = element.getElementsByTag("ktk_s").text();
   xcz_l = element.getElementsByTag("xcz_l").text();
   xcz_s = element.getElementsByTag("xcz_s").text();
   chy_l = element.getElementsByTag("chy_l").text();
   chy_shuoming = element.getElementsByTag("chy_shuoming").text();
   pollution_l = element.getElementsByTag("pollution_l").text();
   pollution_s = element.getElementsByTag("pollution_s").text();
   gm_l = element.getElementsByTag("gm_l").text();
   gm_s = element.getElementsByTag("gm_s").text();
   yd_l = element.getElementsByTag("yd_l").text();
   yd_s = element.getElementsByTag("yd_s").text();
   isLoaded = true;
  } catch (UnsupportedEncodingException e) {
   isLoaded = false;
  }
}

3、訪問網(wǎng)絡

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public static final String ENCODE = "utf-8";
public static String doGet(String url) {
  try {
   HttpGet httpGet = new HttpGet(url);
   HttpClient hc = new DefaultHttpClient();
   HttpResponse ht = hc.execute(httpGet);
   if (ht.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
    HttpEntity he = ht.getEntity();
    InputStream is = he.getContent();
    BufferedReader br = new BufferedReader(
      new InputStreamReader(is));
    String response = "";
    String readLine = null;
    while ((readLine = br.readLine()) != null) {
     response = response + readLine;
    }
    is.close();
    br.close();
    return response;
   } else {
    return "error";
   }
  } catch (Exception e) {
   return "error";
  }
}

4、關(guān)于jsoup可參考:

http://baike.baidu.com/view/4066913.htm

希望本文所述對大家Android程序設計有所幫助。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 包射屋 | 久久91精品国产91久 | 国内精品久久久久影院嫩草 | 黑人好大好硬好深好爽想要h | 99精品免费观看 | 91制片厂制作果冻传媒2021 | 热久久天天拍天天拍热久久2018 | 波多野结衣在线观看中文字幕 | 日本国产最新一区二区三区 | 啊啊啊好大好爽视频 | 美女撒尿毛片免费看 | 操弄哥哥的108种姿势 | 羞羞答答免费人成黄页在线观看国产 | 万域之王在线观看 | 男人狂躁女人下半身 | 大象传媒短视频网站 | 午夜在线a亚洲v天堂网2019 | 国产免费一区二区三区免费视频 | 成人午夜在线视频 | 日韩精品免费一区二区 | 99视频都是精品热在线播放 | 成人私人影院在线观看网址 | 国产草草 | 摸逼小说 | 99re最新网址 | 日韩国产欧美精品综合二区 | 国产欧美一区二区精品久久久 | free哆拍拍免费永久视频 | 精精国产xxxx视频在线播放器 | 亚洲欧美另类综合 | 美女的隐私脱裤子无遮挡 | 奇米影视888四色首页 | 18xxxx中国 | 精品午夜寂寞黄网站在线 | 99ri精品 | 69欧美另类xxxxx高清 | 亚洲国产欧美在线人网站 | 亚洲精品在线网址 | 香蕉免费看一区二区三区 | 亚洲精品国产成人99久久 | 美女被草漫画 |