xml節(jié)點(diǎn)詳解

xml節(jié)點(diǎn)詳解

ID:22018270

大?。?81.33 KB

頁數(shù):5頁

時(shí)間:2018-10-26

xml節(jié)點(diǎn)詳解_第1頁
xml節(jié)點(diǎn)詳解_第2頁
xml節(jié)點(diǎn)詳解_第3頁
xml節(jié)點(diǎn)詳解_第4頁
xml節(jié)點(diǎn)詳解_第5頁
資源描述:

《xml節(jié)點(diǎn)詳解》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。

1、2012-05-1511:10【轉(zhuǎn)】XML節(jié)點(diǎn)的認(rèn)識(shí)XML文件就像一個(gè)樹狀的目錄??梢园训谝恍挟?dāng)作它扎根的“土地”?!   ML文件是由節(jié)點(diǎn)構(gòu)成的。它的第一個(gè)節(jié)點(diǎn)為“根節(jié)點(diǎn)”。一個(gè)XML文件必須有且只能有一個(gè)根節(jié)點(diǎn),其他節(jié)點(diǎn)都必須是它的子節(jié)點(diǎn)。我們?cè)贔LASH里使用XML對(duì)象解析XML的時(shí)候,this代表整個(gè)XML文件,它的根節(jié)點(diǎn)就是this.firstChild。this.firstChild.childNodes則返回由根節(jié)點(diǎn)的所有子節(jié)點(diǎn)組成的節(jié)點(diǎn)數(shù)組?!   ∶總€(gè)子節(jié)點(diǎn)又可以有自己的子節(jié)點(diǎn)。節(jié)點(diǎn)編

2、號(hào)由0開始,根節(jié)點(diǎn)的第一個(gè)子節(jié)點(diǎn)為this.firstChild.childNodes[0],它的子節(jié)點(diǎn)數(shù)組就是this.firstChild.childNodes[0].childNodes?!   ±^續(xù)深入到?jīng)]有子節(jié)點(diǎn)的單一節(jié)點(diǎn),比如根節(jié)點(diǎn)第一個(gè)子節(jié)點(diǎn)的第二個(gè)子節(jié)點(diǎn)this.firstChild.childNodes[0].childNodes[1],它返回的是一個(gè)XML對(duì)象(Object)。這里需要特別注意,節(jié)點(diǎn)標(biāo)簽之間的數(shù)據(jù)本身也視為一個(gè)節(jié)點(diǎn)this.firstChild.childNodes[0

3、].childNodes[1].firstChild,而不是一個(gè)值?!   ∥覀兘馕鯴ML的最終目的當(dāng)然就是獲得數(shù)據(jù)的值:this.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue。注意!不是this.firstChild.childNodes[0].childNodes[1].nodeValue!節(jié)點(diǎn)名稱有時(shí)也是我們需要的數(shù)據(jù):this.firstChild.childNodes[0].childNodes[1].nodeName。注

4、意比較獲得節(jié)點(diǎn)名稱和節(jié)點(diǎn)值的不同。    除了作為子節(jié)點(diǎn),數(shù)據(jù)還可以作為節(jié)點(diǎn)屬性。節(jié)點(diǎn)屬性寫在節(jié)點(diǎn)標(biāo)簽內(nèi)部:<節(jié)點(diǎn)屬性1="屬性值"屬性2="屬性值"......>節(jié)點(diǎn)值。如果數(shù)據(jù)全作為屬性而沒有節(jié)點(diǎn)值,則可以寫成<節(jié)點(diǎn)屬性="屬性值"/>的形式,而不用寫成<節(jié)點(diǎn)屬性="屬性值">。注意節(jié)點(diǎn)必須關(guān)閉,寫成<節(jié)點(diǎn)屬性="屬性值">就不對(duì)了?! 」?jié)點(diǎn)的所有屬性返回一個(gè)通用對(duì)象(Object),比如根節(jié)點(diǎn)第六個(gè)子節(jié)點(diǎn)的第三個(gè)子節(jié)點(diǎn)的所有屬性為:this.firstChild.childNodes[5].chil

5、dNodes[2].attributes。獲得其中的“地址”屬性:this.firstChild.childNodes[5].childNodes[2].attributes.地址。    比較而言,數(shù)據(jù)作為屬性的方式更好。因?yàn)槲募鄬?duì)比較小,而且避免深入更多層子節(jié)點(diǎn),解析速度更快。  下面以簡(jiǎn)歷的JobXMLModel類(模型)看看在flash里具體的解析。JobXMLModel類繼承XML類,首先在構(gòu)造函數(shù)里設(shè)置ignoreWhite屬性為true忽略XML文件中多余的空格?! ?/構(gòu)造函數(shù)  pub

6、licfunctionJobXMLModel(){  ignoreWhite=true;  }  //覆蓋XML類的onLoad事件  privatefunctiononLoad():Void{  //變量tmpA存儲(chǔ)根節(jié)點(diǎn)的節(jié)點(diǎn)數(shù)組?! artmpA:Array=this.firstChild.childNodes;  //把tmpA的長(zhǎng)度存儲(chǔ)在tmpL變量里?! artmpL:Number=tmpA.length;  //以根節(jié)點(diǎn)第一、第六個(gè)子節(jié)點(diǎn)為例,同樣存儲(chǔ)數(shù)組長(zhǎng)度變量  varbasicIn

7、foL:Number=tmpA[0].childNodes.length;  varmyWorksL:Number=tmpA[5].childNodes.length;  //根節(jié)點(diǎn)子節(jié)點(diǎn)的節(jié)點(diǎn)名稱存入數(shù)組  for(vari:Number=0;i  項(xiàng)目列表.push(tmpA[i].nodeName);  }  //第一個(gè)子節(jié)點(diǎn)數(shù)據(jù)作為子節(jié)點(diǎn)  for(vari:Number=0;i  //單一節(jié)點(diǎn)返回一個(gè)XML對(duì)象,用一個(gè)變量tmpO存儲(chǔ)它  vartmpO:Object=tmpA[0].child

8、Nodes[i];  //把每個(gè)節(jié)點(diǎn)的名稱和節(jié)點(diǎn)值作為通用對(duì)象(Object)的屬性存在數(shù)組里  基本資料.push({title:tmpO.nodeName,content:tmpO.firstChild.nodeValue});  }  //第六個(gè)子節(jié)點(diǎn)數(shù)據(jù)作為節(jié)點(diǎn)屬性  for(vari:Number=0;i  vartmpO:Object=tmpA[5].childNodes[i];  //把節(jié)點(diǎn)名稱和節(jié)點(diǎn)屬性作為通用

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。