0

我正在尝试在 for 循环中调用 XML 文件。我正在使用以下代码:

for (var i:uint = 0; i < files.length; i++)
{
    savefilelocation = File.applicationStorageDirectory.resolvePath("puzzle.xml")
    var puzzleInput:XML = new XML;
    var myLoader:URLLoader = new URLLoader();
    myLoader.load(new URLRequest(savefilelocation.name));
    myLoader.addEventListener(Event.COMPLETE, processXML1);
    PuzzleTitle = puzzleInput.Title;
}
function processXML1(event:Event) :void{
    puzzleInput = new XML(event.target.data);
    trace("puzzleInput: "+puzzleInput.data)
    trace(puzzleInput.name)
    trace(puzzleInput.url)
}

通常在 for 循环中,我可以调用其他函数。但是,在此代码部分中,我无法访问 processXML1 函数。有没有我错过的一点?谢谢你的帮助。

4

1 回答 1

0

好的,我一直在尝试Larusso所说的,最后我得到了这个属性。这是正确的方法:

    var fileStream:FileStream = new FileStream();
    fileStream.open(savefilelocation, FileMode.READ);
    var rawData:String = fileStream.readUTFBytes(fileStream.bytesAvailable);
    fileStream.close();
    var out:XML = XML(rawData);
    PuzzleTitle = out.Title;

我添加了这些代码而不是 URLLoader。最后我得到了正确的结果。感谢您的帮助。

于 2013-05-27T10:14:26.777 回答