×
Namespaces

Variants
Actions
Revision as of 00:17, 31 May 2007 by soueldi (Talk | contribs)

Archived:How to load and parse XML files

From Nokia Developer Wiki
Jump to: navigation, search


Compatibility: Flash Lite 2.x

We will be using this basic XML document:

<myPhone>
<modelName>Nokia N73</modelName>
<screen>
<height>240</height>
<width>320</width>
</screen>
<cpu>
<type>ARM 9</type>
<clock_rate>220</clock_rate>
</cpu>
</myPhone>


Contents

Loading XML files

This following script load an XML file:

// create a new XML object
var myPhoneXML = new XML();
 
//Text nodes that contain only white space are discarded
myPhoneXML.ignoreWhite = true;
 
// define the onload handler
myPhoneXML.onLoad = function(success) {
if (success) {
trace("XML loaded");
} else {
trace("Loading failed");
}
};
 
// load the XML file into the myPhoneXML object
myPhoneXML.load("myPhone.xml");
  • The load() method on the XML object allows you to download data from a remote host.
  • When the data is finished downloading, the onLoad event of the XML object occurs.

XML Navigation

  • firstChild: The first child in the parent node's child list
trace(myPhoneXML.firstChild);
// Output: <myPhone>[...]</myPhone>
 
trace(myPhoneXML.firstChild.firstChild);
// Output: <modelName>[...]</modelName>


  • lastChild: The last child in the parent node's child list
trace(myPhoneXML.firstChild.lastChild);
// Output: <cpu>[...]</cpu>


  • nextSibling: The next node in the parent node's child list
trace(myPhoneXML.firstChild.firstChild.nextSibling);
// Output: <screen>[...]</screen>


  • previousSibling: The previous node in the parent node's child list


Xml nav.jpg


Getting nodes value

  • This example check the <clock_rate> node value:
trace(myPhoneXML.firstChild.lastChild.lastChild.firstChild.nodeValue);
// Output: 220


  • Another example using user XMLNode objects to get the screen resolution
var screenNode:XMLNode = myPhoneXML.firstChild.firstChild.nextSibling;
 
trace("Resolution: " + screenNode.firstChild.firstChild.nodeValue + " x " +
screenNode.lastChild.firstChild.nodeValue);
// Output: Resolution: 240 x 320
  • Another example by iterating through the child nodes
for (var aNode:XMLNode = myPhoneXML.firstChild.firstChild.nextSibling.firstChild;aNode != null;aNode=aNode.nextSibling) {
trace(aNode.firstChild.nodeValue);
}
// Output: 240
// 320

Download

You can download an example with source code here:

This Flash Lite 2.x application get and show informations about the 5 five lastest Nokia devices. It use RSS feeds and XML Flash Lite methods. Latest_Nokia_Devices_240*320.zip
Nokia Latest Devices.jpg

65 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×