Converting XML to ArrayCollection or Array in ActionScript Example

Convert and Store XML data to ArrayCollection or Array in ActionScript Example.

1. XML
 books.xml

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<?xml version="1.0"?>
<catalog>
   <book id="bk101">
      <author>Gambardella, Matthew</author>
      <title>XML Developer's Guide</title>
      <genre>Computer</genre>
      <price>44.95</price>
      <publish_date>2000-10-01</publish_date>
      <description>An in-depth look at creating applications 
      with XML.</description>
   </book>
   <book id="bk102">
      <author>Ralls, Kim</author>
      <title>Midnight Rain</title>
      <genre>Fantasy</genre>
      <price>5.95</price>
      <publish_date>2000-12-16</publish_date>
      <description>A former architect battles corporate zombies, 
      an evil sorceress, and her own childhood to become queen 
      of the world.</description>
   </book>
   <book id="bk103">
      <author>Corets, Eva</author>
      <title>Maeve Ascendant</title>
      <genre>Fantasy</genre>
      <price>5.95</price>
      <publish_date>2000-11-17</publish_date>
      <description>After the collapse of a nanotechnology 
      society in England, the young survivors lay the 
      foundation for a new society.</description>
   </book>
   <book id="bk104">
      <author>Corets, Eva</author>
      <title>Oberon's Legacy</title>
      <genre>Fantasy</genre>
      <price>5.95</price>
      <publish_date>2001-03-10</publish_date>
      <description>In post-apocalypse England, the mysterious 
      agent known only as Oberon helps to create a new life 
      for the inhabitants of London. Sequel to Maeve 
      Ascendant.</description>
   </book>
   <book id="bk105">
      <author>Corets, Eva</author>
      <title>The Sundered Grail</title>
      <genre>Fantasy</genre>
      <price>5.95</price>
      <publish_date>2001-09-10</publish_date>
      <description>The two daughters of Maeve, half-sisters, 
      battle one another for control of England. Sequel to 
      Oberon's Legacy.</description>
   </book>
   <book id="bk106">
      <author>Randall, Cynthia</author>
      <title>Lover Birds</title>
      <genre>Romance</genre>
      <price>4.95</price>
      <publish_date>2000-09-02</publish_date>
      <description>When Carla meets Paul at an ornithology 
      conference, tempers fly as feathers get ruffled.</description>
   </book>
   <book id="bk107">
      <author>Thurman, Paula</author>
      <title>Splish Splash</title>
      <genre>Romance</genre>
      <price>4.95</price>
      <publish_date>2000-11-02</publish_date>
      <description>A deep sea diver finds true love twenty 
      thousand leagues beneath the sea.</description>
   </book>
   <book id="bk108">
      <author>Knorr, Stefan</author>
      <title>Creepy Crawlies</title>
      <genre>Horror</genre>
      <price>4.95</price>
      <publish_date>2000-12-06</publish_date>
      <description>An anthology of horror stories about roaches,
      centipedes, scorpions  and other insects.</description>
   </book>
   <book id="bk109">
      <author>Kress, Peter</author>
      <title>Paradox Lost</title>
      <genre>Science Fiction</genre>
      <price>6.95</price>
      <publish_date>2000-11-02</publish_date>
      <description>After an inadvertant trip through a Heisenberg
      Uncertainty Device, James Salway discovers the problems 
      of being quantum.</description>
   </book>
   <book id="bk110">
      <author>O'Brien, Tim</author>
      <title>Microsoft .NET: The Programming Bible</title>
      <genre>Computer</genre>
      <price>36.95</price>
      <publish_date>2000-12-09</publish_date>
      <description>Microsoft's .NET initiative is explored in 
      detail in this deep programmer's reference.</description>
   </book>
   <book id="bk111">
      <author>O'Brien, Tim</author>
      <title>MSXML3: A Comprehensive Guide</title>
      <genre>Computer</genre>
      <price>36.95</price>
      <publish_date>2000-12-01</publish_date>
      <description>The Microsoft MSXML3 parser is covered in 
      detail, with attention to XML DOM interfaces, XSLT processing, 
      SAX and more.</description>
   </book>
   <book id="bk112">
      <author>Galos, Mike</author>
      <title>Visual Studio 7: A Comprehensive Guide</title>
      <genre>Computer</genre>
      <price>49.95</price>
      <publish_date>2001-04-16</publish_date>
      <description>Microsoft Visual Studio 7 is explored in depth,
      looking at how Visual Basic, Visual C++, C#, and ASP+ are 
      integrated into a comprehensive development 
      environment.</description>
   </book>
</catalog>
2. MXML Application.

XMLApp.mxml

<?xml version="1.0" encoding="utf-8"?> 
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"               
  xmlns:s="library://ns.adobe.com/flex/spark"               
  xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"              
  creationComplete="loadXMLFile()">     
 <fx:Declarations>             
 </fx:Declarations>         
 <fx:Script>        
  <![CDATA[             
   import flash.events.Event;             
   import flash.net.URLLoader;             
   import flash.net.URLRequest;                         
   import mx.collections.ArrayCollection;                         
   private var _xml:XML;
   private var _bookArray:ArrayCollection = new ArrayCollection(); 
   private function loadXMLFile():void {   
    var loader= new URLLoader(new URLRequest("books.xml"));                
    loader.addEventListener(Event.COMPLETE, loadedCompleteHandler);          
   }                        
   private function loadedCompleteHandler(e:Event):void             {               
    e.target.removeEventListener(Event.COMPLETE, loadedCompleteHandler);            
    _xml = XML(e.target.data);              
    for each (var book:XML in _xml.book) { 
     var bookObj:Object = new Object();                              
     bookObj.author = book.author;                  
     bookObj.title = book.title;                 
     bookObj.genre = book.genre;                 
     bookObj.price = book.price;                 
     bookObj.publish_date = book.publish_date;    
     bookObj.description = book.description;      
     _bookArray.addItem(bookObj);                 
     trace("author: " + book.author);             
     trace("title: " + book.title);               
     trace("genre: " + book.genre);               
     trace("price: " + book.price);              
     trace("publish_date: " + book.publish_date);    
     trace("description: " + book.description);      
    }        
   }         
   ]]>   
  </fx:Script>  
  <s:DataGrid id="dataGrid" dataProvider="{_bookArray}" requestedRowCount="10" >   
   <s:columns>            
    <s:ArrayList>                
     <s:GridColumn dataField="author" headerText="Author" width="130"></s:GridColumn>    
     <s:GridColumn dataField="title" headerText="Title" width="180" ></s:GridColumn>     
     <s:GridColumn dataField="genre" headerText="Genre" width="100" ></s:GridColumn>      
     <s:GridColumn dataField="price" headerText="Price" width="80" ></s:GridColumn>       
     <s:GridColumn dataField="publish_date" headerText="Publish Date" width="100" ></s:GridColumn>    
     <s:GridColumn dataField="description" headerText="Description" width="300" ></s:GridColumn>                             
   </s:ArrayList>         
  </s:columns>     
 </s:DataGrid>     
</s:Application>



3. Result.


Tags: ,

0 Responses to “Converting XML to ArrayCollection or Array in ActionScript Example”

Post a Comment

Thanks for your comments

Subscribe

© 2014 Java Frameworks. All rights reserved.
Designed by Blogger