более быстрый способ изменить xml на массив (grails to flex) - PullRequest
1 голос
/ 22 апреля 2010

У меня есть большой XML, переданный из Grails, чтобы согнуть. Когда flex получает xml, он преобразует xml в объект ассоциативного массива. Учитывая большой xml-файл, цикл занимает слишком много времени, есть ли способ во флексе ускорить преобразование? Ниже приведен мой пример кода.

<xml>
   <car>
      <model>Vios</model>
      <type>Sedan</type>
      <color>Blue</color>
   </car>
   <car>
      <model>Camry</model>
      <type>Luxury</type>
      <color>Black</color>
   </car>
</xml>

*converted to the flex associative array below.*
[Vios].type = Sedan
      .color = Blue
[Camry].type = Luxury
       .color = Black

*Below is a code I used in flex to convert the xml to the associative array object*
var tempXML=xml.children()
var tempArray:Array= new Array()
for(var i:int=0;i<tempXML.length();i++)
{
   tempArray[tempXML[i].@model]= new Object();
   tempArray[tempXML[i].@model].color = tempXML[i].@color.toString();
   tempArray[tempXML[i].@model].type = tempXML[i].@type.toString();
}

1 Ответ

0 голосов
/ 22 апреля 2010

Вы можете установить HTTPService resultFormat на array. Чем вам нужно получить массив сразу (проанализированный Flex, это все равно может занять некоторое время)

...