XML einlesen in Flash in AS2 oder AS3 geschrieben am 28.05.2008
diese xml:
<?xml version='1.0' encoding='utf-8'?>
<test>
<frage>
<aufgabe><![CDATA[Was ist ein Trojaner?]]></aufgabe>
<antwort richtig="false"><![CDATA[ein Maskottchen]]></antwort>
<antwort richtig="true"><![CDATA[Bewohner des antiken Troja]]></antwort>
<antwort richtig="true"><![CDATA[ein Schadprogramm]]</antwort>
<antwort richtig="false"><![CDATA[ein Kämpfer]]</antwort>
</frage>
</test>
mittels Actionsript 2 einlesen:
ActionScript2
function auswertungXML(){
var anzahl=XMLdaten.firstChild.childNodes.length;//Anzahl der nodes in der xml-Datei
trace('anzahl='+anzahl);
for(var t=0;t<anzahl;t++)
{
var node:XMLNode=XMLdaten.firstChild.childNodes[t];
trace(t+' '+node.nodeName)
if(node.nodeName=='frage')
{
for(var t2=0;t2<node.childNodes.length;t2++)
{
var node2:XMLNode=node.childNodes[t2];
if(node2.nodeName=='aufgabe')
{
trace(node2.firstChild.nodeValue)
}
if(node2.nodeName=='antwort')
{
trace(node2.attributes.richtig)
}
}
}
}
}//function auswertungXML
//xml einlesen
var XMLdaten=new XML();
XMLdaten.ignoreWhite=true; //leerzeichen ignorieren
XMLdaten.onLoad = function(success){//wenn *.xml geladen auswerten
if(success)
{
auswertungXML()
}
else{//Fehler
trace('Fehler beim Lesen von test.xml');
};
};//XMLdaten.onLoad
XMLdaten.load('test/test.xml');
mittels Actionsript 3 geht das über den addEventListener:
ActionScript3
var XMLdaten:XML=new XML();
XMLdaten.ignoreWhite=true;
var XMLloader:URLLoader = new URLLoader();
function loadready(e:Event):void {
XMLdaten=XML(XMLloader.data);
for(var t=0;t<iniXML.children().length();t++){
var aufgabe=iniXML.children()[t].attribute('aufgabe');
trace('>'+ aufgabe);
}
}
XMLloader.addEventListener(Event.COMPLETE, loadready);
XMLloader.load(new URLRequest(String('test/test.xml')));
}
schreibe den ersten Kommentar: