Moin,
ich will mit AS3 eine XML-Datei einlesen und zählen wie viele Einträge im ersten Knoten vorhanden sind.
Code XML:
Code Flash:
Für mein Verständnis sollte der Code so stimmen. Flash sagt auch selber, dass der Code keine Fehler enthält. Wenn ich das ganze dann kompilieren will, bekomm ich:
TypeError: Error #1088: Das Markup im Dokument nach dem Stammelement muss logisch aufgebaut sein.
at Start_fla::MainTimeline/parseXML()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()
Für mich sieht das so aus, als ob mein XML-Code nicht korrekt aufgebaut ist, aber wenn ich versuche die XML-Datei mit AS2 zu laden, gibt es keine Probleme.
Hat wer ne Idee, was an meinem AS3/XML Code falsch ist?
mfg
Ben
ich will mit AS3 eine XML-Datei einlesen und zählen wie viele Einträge im ersten Knoten vorhanden sind.
Code XML:
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<pictures>
<picture1 pfad="./png_img/1.png" />
<picture2 pfad="./png_img/2.png" />
<picture3 pfad="./png_img/3.png" />
<picture4 pfad="./png_img/4.png" />
<picture5 pfad="./png_img/5.png" />
<picture6 pfad="./png_img/6.png" />
<picture7 pfad="./png_img/7.png" />
<picture8 pfad="./png_img/8.png" />
<picture9 pfad="./png_img/9.png" />
</pictures>
...
...
Code Flash:
Code:
//Datei definieren
var xml_file:String = "./_xml/config.xml";
//Loader definieren
var xml_loader:URLLoader = new URLLoader();
//Loader läd Datei
xml_loader.load(new URLRequest(xml_file));
//Array erstellen
//var xml_bildpfad:Array = new Array();
//Zählervariable erstellen
var zaehler:Number = 0;
//Nach Ende des Ladeprozesses wird parseXML aufgerufen
xml_loader.addEventListener(Event.COMPLETE,parseXML);
function parseXML(evt:Event) {
//XML-Daten einlesen
var xml_daten:XML = new XML(evt.target.data);
//Kommentare ignorieren
XML.ignoreComments = true;
//Leerzeichen ignorieren
XML.ignoreWhitespace = true;
//für jedes Element wird der Zähler eines hochgezählt
for (var k:int = 0;k<xml_daten.childNodes[0].length();k++) {
zaehler++;
}
}
Für mein Verständnis sollte der Code so stimmen. Flash sagt auch selber, dass der Code keine Fehler enthält. Wenn ich das ganze dann kompilieren will, bekomm ich:
TypeError: Error #1088: Das Markup im Dokument nach dem Stammelement muss logisch aufgebaut sein.
at Start_fla::MainTimeline/parseXML()
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at flash.net::URLLoader/onComplete()
Für mich sieht das so aus, als ob mein XML-Code nicht korrekt aufgebaut ist, aber wenn ich versuche die XML-Datei mit AS2 zu laden, gibt es keine Probleme.
Hat wer ne Idee, was an meinem AS3/XML Code falsch ist?
mfg
Ben