2010-05-03 14:40

[ActionScript] 讀取 XML 資料格式

1.資料欄位以子節點方式載入與解析
  1. <!-- load_1.xml --> 
  2. <?xml version="1.0" encoding="UTF-8"?> 
  3. <xmltest> 
  4.  <parentnode> 
  5.    <id>1</id> 
  6.    <name>小明</name> 
  7.    <date>2010-10-10</date> 
  8.  </parentnode> 
  9.  <parentnode> 
  10.    <id>2</id> 
  11.    <name>小王</name> 
  12.    <date>2010-5-15</date> 
  13.  </parentnode> 
  14. </xmltest> 

  1. /*建立 XML()*/ 
  2. LoadXml_1 = new XML(); 
  3.  
  4. /*捨棄只包含空白字元的文字節點*/ 
  5. LoadXml_1.ignoreWhite=true; 
  6.  
  7. /*載入完成時所執行的程式*/ 
  8. LoadXml_1.onLoad = function(){ 
  9.    articleList = this.firstChild.childNodes; 
  10.    var txt = ""; 
  11.    for (i=0; i<articleList.length; i++) { 
  12.        elementList = articleList[i].childNodes; 
  13.        for (j=0; j<elementList.length; j++) { 
  14.            elementTag = elementList[j]; 
  15.            switch(elementTag.nodeName){ 
  16.                case "id": 
  17.                    txt += elementTag.firstChild.nodeValue+','; 
  18.                    break; 
  19.                case "name": 
  20.                    txt += elementTag.firstChild.nodeValue+','; 
  21.                    break; 
  22.                case "date": 
  23.                    txt += elementTag.firstChild.nodeValue+','; 
  24.                    break; 
  25.            } 
  26.        } 
  27.        txt += '\n'; 
  28.    } 
  29.  
  30.    trace(txt); /*顯示載入的資料*/ 
  31. } 
  32.  
  33. /*開始載入 load_1.xml*/ 
  34. LoadXml_1.load("load_1.xml"); 



2.資料欄位以屬性方式載入與解析
  1. <!-- load_2.xml --> 
  2. <?xml version="1.0" encoding="utf-8"?> 
  3. <xmltest> 
  4.  <parentnode id="1" name="小明" date="2010-10-10" /> 
  5.  <parentnode id="2" name="小王" date="2010-5-15" /> 
  6. </xmltest> 

  1. /*建立 XML()*/ 
  2. LoadXml_2 = new XML(); 
  3.  
  4. /*捨棄只包含空白字元的文字節點*/ 
  5. LoadXml_2.ignoreWhite=true; 
  6.  
  7. /*載入完成時所執行的程式*/ 
  8. LoadXml_2.onLoad = function(success) { 
  9.    var articleList = this.firstChild.childNodes; 
  10.    var txt = ""; 
  11.    for (i=0; i<articleList.length; i++){ 
  12.        txt += articleList[i].attributes.id+',' 
  13.                +articleList[i].attributes.name+',' 
  14.                +articleList[i].attributes.call+',' 
  15.                +articleList[i].attributes.channel+"\n"; 
  16.    } 
  17.  
  18.    trace(txt);/*顯示載入的資料*/ 
  19. }; 
  20.  
  21. /*開始載入 load_2.xml*/ 
  22. LoadXml_2.load("load_2.xml"); 




參考資料:
Flash CS4 Professional ActionScript 2.0 - XML

0 回應: