亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

XML

XML在FLASH中的應(yīng)用說(shuō)明

時(shí)間:2024-09-22 03:46:43 XML 我要投稿
  • 相關(guān)推薦

關(guān)于XML在FLASH中的應(yīng)用說(shuō)明

  點(diǎn)擊這里瀏覽Flash教程欄目關(guān)于XML在FLASH中的應(yīng)用,以前寫過(guò)幾篇。也收集了幾篇來(lái)自網(wǎng)絡(luò)的。不過(guò),都是一些非常簡(jiǎn)單而常用的。在這里,我把XML的其他相關(guān)說(shuō)明總結(jié)一下。有不足之處,希望大家能相互補(bǔ)充。只為了一個(gè)共同的目的:共同提高。

  一、書寫標(biāo)準(zhǔn)的XML需要注意以下幾點(diǎn):

  一個(gè)標(biāo)準(zhǔn)的XML文檔必須要在第一行以""開頭,以及一個(gè)""結(jié)尾,其中開頭部分需申明XML的版本,如:version="1.0",也應(yīng)包含一個(gè)關(guān)于編碼的聲明:“encoding="utf-8"”; XML要求所有的標(biāo)簽必須在文檔結(jié)束之前被閉合,如果標(biāo)簽中包含內(nèi)容,則必須寫成“<標(biāo)簽名>內(nèi)容"的格式,如果內(nèi)容為空,則應(yīng)寫在的格式;即,后面必須有這種格式的。 每個(gè)XML都有有一個(gè)根元素,也叫根節(jié)點(diǎn)。 節(jié)點(diǎn)有節(jié)點(diǎn)值和屬性。 XML的節(jié)點(diǎn)值如果出現(xiàn)與XML標(biāo)簽關(guān)鍵字一樣的字符,XML將會(huì)無(wú)法解析文檔,比如,某個(gè)節(jié)點(diǎn)值如果是一個(gè)大于或者小于號(hào),就會(huì)讓解釋器產(chǎn)生一個(gè)錯(cuò)誤。

  二、在FLASH中創(chuàng)建一個(gè)簡(jiǎn)單的實(shí)例:

  //創(chuàng)建一個(gè)新的XML類實(shí)例

  var my_XML:XML=new XML();

  //創(chuàng)建一個(gè)TextArea組件,用于顯示此XML內(nèi)容

  var my_TextArea:mx.controls.TextArea;

  //加載外部XML文件

  my_XML.load("my_xml.xml");

  //為load函數(shù)定義onLoad函數(shù)---此處是必須的。只有當(dāng)加載成功后,才能控制XML。否則不能。

  my_XML.onLoad=function(ok:Boolean){

  if(ok){

  my_TextArea.text =this;

  }else{

  my_TextArea.text ="加載失敗..."

  }

  }

  //忽略空白:

  my_XML.ignoreWhite=true;

  三、關(guān)于FLASH解析XML詳解,說(shuō)白了,也就是對(duì)節(jié)點(diǎn)的讀取。

  首先,來(lái)看看這幅圖,稍微加點(diǎn)印象。

  下面,我將對(duì)XML文件的解析方面做詳細(xì)的介紹。

  為了便于講解,在此,我舉一個(gè)簡(jiǎn)單的例子。

  1、新建一個(gè)記事本文件,在里面輸入如下內(nèi)容:

  <購(gòu)買物品>

  <襯衣>1件

  <褲子>2件

  <鞋子>3雙

  <總花費(fèi)金額>

  <打的費(fèi)>50元

  <貨物金>1000元

  然后保存為"goods.xml",注意,在編碼處,要選擇"Unicode"。

  2、下面,就對(duì)里面的各項(xiàng)值進(jìn)行解讀。

  讀取整個(gè)XML文件的方法:

  在剛才的XML的同級(jí)目錄下新建一FLA文件,然后在場(chǎng)景中放置一TextArea組件。并賦實(shí)例名“my_TextArea”,

  然后在第一幀中添加如下代碼:

  var my_XML:XML=new XML();

  System.useCodepage=true;

  var my_TextArea:mx.controls.TextArea;

  my_XML.load("goods.xml")

  my_XML.onLoad=function(ok:Boolean){

  if(ok){

  my_TextArea.text =this;

  }else{

  my_TextArea.text ="加載失敗"

  }

  }

  按CTRL ENTER測(cè)試,即可以看效果。

  首先,我們來(lái)看看如何對(duì)XML中的節(jié)點(diǎn)名稱或者節(jié)點(diǎn)屬性進(jìn)行讀取呢?

  比如,我們要讀取如例子中的"購(gòu)買物品"這幾個(gè)字符,該如何操作呢?

  我們使用如下語(yǔ)句:

  this.firstChild.nodeName;

  如果要讀取"襯衣":

  this.firstChild.childNodes[0].nodeName;

  如果要讀取"1條":

  this.firstChild.childNodes[1].childNodes[0].nodeValue;

  如果要讀取褲子的品牌:

  this.firstChild.childNodes[1].attributes.品牌;

  將XML讀取進(jìn)LIST組件中:

  System.useCodepage = true;

  var my_TextArea:mx.controls.TextArea;

  var my_List:mx.controls.List;

  var my_XML:XML = new XML();

  my_XML.ignoreWhite = true;

  my_XML.load("shopping.xml");

  my_XML.onLoad = function(ok:Boolean) {

  if (ok) {

  var childnodes = this.firstChild.childNodes;

  for (i=0; i<childnodes.length; i ) {

  my_List.addItem({label:childnodes.nodeName});

  }

  } else {

  my_TextArea.text = "加載失敗";

  }

  };

  第一個(gè)節(jié)點(diǎn):firstChild:

  用法:this.firstChild;

  最后一個(gè)節(jié)點(diǎn):lastChild

  用法:this.firstChild;

  兄弟節(jié)點(diǎn):nextSibling:

  用法:this.firstChild.childNodes[0].nextSibling;

  另一個(gè)兄弟節(jié)點(diǎn):previousSibling:

  用法:this.firstChild.childNodes[0].previousSibling;

  區(qū)別:nextSibling是朝后,而previousSibling是當(dāng)前之前;

  父類節(jié)點(diǎn):parentNode:

  用法:this.firstChild.parentNode;

【XML在FLASH中的應(yīng)用說(shuō)明】相關(guān)文章:

ppt中插入Flash動(dòng)畫四種方法09-05

益智游戲在幼兒教學(xué)中的應(yīng)用02-15

CAD在園林設(shè)計(jì)中的應(yīng)用10-25

怎么打開xml文件的方法和軟件06-17

國(guó)學(xué)智慧在企業(yè)管理中的應(yīng)用03-04

國(guó)學(xué)在企業(yè)管理中應(yīng)用的案例03-04

網(wǎng)頁(yè)制作中PS圖像處理的應(yīng)用07-16

私密性在景觀環(huán)境中的應(yīng)用07-17

flash動(dòng)畫制作說(shuō)課稿(精選11篇)03-06

flash動(dòng)畫設(shè)計(jì)與制作說(shuō)課稿11-20