關於XML在FLASH中的應用説明
點擊這裏瀏覽Flash教程欄目關於XML在FLASH中的應用,以前寫過幾篇。也收集了幾篇來自網絡的。不過,都是一些非常簡單而常用的。在這裏,我把XML的其他相關説明總結一下。有不足之處,希望大家能相互補充。只為了一個共同的目的`:共同提高。
一、書寫標準的XML需要注意以下幾點:
一個標準的XML文檔必須要在第一行以""開頭,以及一個""結尾,其中開頭部分需申明XML的版本,如:version="1.0",也應包含一個關於編碼的聲明:“encoding="utf-8"”; XML要求所有的標籤必須在文檔結束之前被閉合,如果標籤中包含內容,則必須寫成“<標籤名>內容"的格式,如果內容為空,則應寫在的格式;即,後面必須有這種格式的。 每個XML都有有一個根元素,也叫根節點。 節點有節點值和屬性。 XML的節點值如果出現與XML標籤關鍵字一樣的字符,XML將會無法解析文檔,比如,某個節點值如果是一個大於或者小於號,就會讓解釋器產生一個錯誤。
二、在FLASH中創建一個簡單的實例:
//創建一個新的XML類實例
var my_XML:XML=new XML();
//創建一個TextArea組件,用於顯示此XML內容
var my_TextArea:Area;
//加載外部XML文件
my_("my_");
//為load函數定義onLoad函數---此處是必須的。只有當加載成功後,才能控制XML。否則不能。
my_ad=function(ok:Boolean){
if(ok){
my_ =this;
}else{
my_ ="加載失敗..."
}
}
//忽略空白:
my_reWhite=true;
三、關於FLASH解析XML詳解,説白了,也就是對節點的讀取。
首先,來看看這幅圖,稍微加點印象。
下面,我將對XML文件的解析方面做詳細的介紹。
為了便於講解,在此,我舉一個簡單的例子。
1、新建一個記事本文件,在裏面輸入如下內容:
<購買物品>
<襯衣>1件
<褲子>2件
<鞋子>3雙
<總花費金額>
<打的費>50元
<貨物金>1000元
然後保存為"",注意,在編碼處,要選擇"Unicode"。
2、下面,就對裏面的各項值進行解讀。
讀取整個XML文件的方法:
在剛才的XML的同級目錄下新建一FLA文件,然後在場景中放置一TextArea組件。並賦實例名“my_TextArea”,
然後在第一幀中添加如下代碼:
var my_XML:XML=new XML();
odepage=true;
var my_TextArea:Area;
my_("")
my_ad=function(ok:Boolean){
if(ok){
my_ =this;
}else{
my_ ="加載失敗"
}
}
按CTRL ENTER測試,即可以看效果。
首先,我們來看看如何對XML中的節點名稱或者節點屬性進行讀取呢?
比如,我們要讀取如例子中的"購買物品"這幾個字符,該如何操作呢?
我們使用如下語句:
Name;
如果要讀取"襯衣":
dNodes[0]Name;
如果要讀取"1條":
dNodes[1]dNodes[0]Value;
如果要讀取褲子的品牌:
dNodes[1]ibutes.品牌;
將XML讀取進LIST組件中:
odepage = true;
var my_TextArea:Area;
var my_List:;
var my_XML:XML = new XML();
my_reWhite = true;
my_("");
my_ad = function(ok:Boolean) {
if (ok) {
var childnodes = dNodes;
for (i=0; i<th; i ) {
my_tem({label:Name});
}
} else {
my_ = "加載失敗";
}
};
第一個節點:firstChild:
用法:tChild;
最後一個節點:lastChild
用法:tChild;
兄弟節點:nextSibling:
用法:dNodes[0]Sibling;
另一個兄弟節點:previousSibling:
用法:dNodes[0]iousSibling;
區別:nextSibling是朝後,而previousSibling是當前之前;
父類節點:parentNode:
用法:ntNode;