在以下 XML 中:
<myxml>
<photos>
<photo url="1.jpg"/>
<photo url="2.jpg"/>
<photo url="3.jpg"/>
<photo url="4.jpg"/>
</photos>
</myxml>
如何使用 e4x 提取 url 并将它们推送到具有最少代码的数组中?
在以下 XML 中:
<myxml>
<photos>
<photo url="1.jpg"/>
<photo url="2.jpg"/>
<photo url="3.jpg"/>
<photo url="4.jpg"/>
</photos>
</myxml>
如何使用 e4x 提取 url 并将它们推送到具有最少代码的数组中?
这是一行代码:
var myArray:Array = Array(myXML..@url);
trace(myArray); //outputs: 1.jpg2.jpg3.jpg4.jpg
编辑:实际上,上面的行生成了一个包含所有 url 的长字符串的数组。为了生成有用的数组,您需要这样做:
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
试试看:
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);
}