|
在Android平臺(tái)下操作xml方式有很多種,常見的為SAX(Simple APIfor XML)和DOM(Document Object Model)。
SAX操作xml的特點(diǎn)是當(dāng)讀取xml文件的時(shí)候會(huì)隨時(shí)觸發(fā)事件,通過事件來處理當(dāng)前讀取到的內(nèi)容。這一點(diǎn)是跟dom有所不同的,dom是全部讀取完后在進(jìn)行操作。
現(xiàn)在這個(gè)實(shí)例是以SAX進(jìn)行XML操作的!
這個(gè)例子是讀取Google的天氣預(yù)報(bào)為例子做成了,使用的XML地址如下:http://www.google.com/ig/api?weather=beijing&hl=zh-cn
通過互聯(lián)網(wǎng)獲取天氣的XML代碼,然后再通過SAX進(jìn)行讀取:
在例子中只是讀取了當(dāng)前的時(shí)時(shí)天氣,沒有對(duì)預(yù)報(bào)的內(nèi)容進(jìn)行讀取,等以后再完善吧:
首先根據(jù)XML文件抽象出一個(gè)類來,我獲取到的XML代碼如下:
<?xml version="1.0" ?>
<xml_api_reply version="1">
<weather module_id="0" tab_id="0" mobile_row="0" mobile_zipped="1"
row="0" section="0">
<forecast_information>
<city data="Beijing, Beijing" />
<postal_code data="beijing" />
<latitude_e6 data="" />
<longitude_e6 data="" />
<forecast_date data="2010-12-27" />
<current_date_time data="2010-12-28 04:00:00 +0000" />
<unit_system data="SI" />
</forecast_information>
<current_conditions>
<condition data="晴" />
<temp_f data="28" />
<temp_c data="-2" />
<humidity data="濕度: 27%" />
<icon data="/ig/images/weather/sunny.gif" />
<wind_condition data="風(fēng)向: 西北、風(fēng)速:7 米/秒" />
</current_conditions>
<forecast_conditions>
<day_of_week data="周一" />
<low data="-12" />
<high data="6" />
<icon data="/ig/images/weather/sunny.gif" />
<condition data="晴" />
</forecast_conditions>
<forecast_conditions>
<day_of_week data="周二" />
<low data="-11" />
<high data="1" />
<icon data="/ig/images/weather/sunny.gif" />
<condition data="晴" />
</forecast_conditions>
<forecast_conditions>
<day_of_week data="周三" />
<low data="-11" />
<high data="2" />
<icon data="/ig/images/weather/chance_of_snow.gif" />
<condition data="可能降雪" />
</forecast_conditions>
<forecast_conditions>
<day_of_week data="周四" />
<low data="-13" />
<high data="-2" />
<icon data="/ig/images/weather/sunny.gif" />
<condition data="晴" />
</forecast_conditions>
</weather>
</xml_api_reply>
it知識(shí)庫:Android XML的操作(SAX),轉(zhuǎn)載需保留來源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。