在以下XML中:
<myxml>
<photos>
<photo url="1.jpg"/>
<photo url="2.jpg"/>
<photo url="3.jpg"/>
<photo url="4.jpg"/>
</photos>
</myxml>
如何使用e4x提取网址并使用尽可能少的代码将其推送到数组中?
答案 0 :(得分:2)
这是一行代码:
var myArray:Array = Array(myXML..@url);
trace(myArray); //outputs: 1.jpg2.jpg3.jpg4.jpg
编辑:实际上,上面的行产生一个数组,其中包含一个长字符串的所有网址。为了生成一个有用的数组,你可以这样做:
var myArray:Array = new Array();
for each(var item:XML in myXML..photo){
myArray.push(item.@url);
}
trace(myArray); //outputs: 1.jpg,2.jpg,3.jpg,4.jpg
答案 1 :(得分:1)
试试:
var picXML:XML;
var arrayPic:Array = new Array();
var stream:FileStream = new FileStream();
stream.open("file.xml", FileMode.READ);
picXML = XML(stream.readUTFBytes(stream.bytesAvailable));
stream.close();
for(var i:int = 0; i < calendarsXML.photos.photo.length();i++)
{
arrayPic.push(myxml.photos.photo[i].@url);
}