·您当前的位置:首页 > 技术教程 > Flex技术 >

[Flex]flex使用URLRequest加载XML文档代码的示例

时间:2012-10-24 10:15未知
问题 我想从XML文档中或服务端脚本产生的XML中读取XML数据 解决办法 使用URLLoader.load() 方法且设置dataFormat属性为DataFormat.TEXT读取数据,通过complete事件处理函数转换载入的数据为XML实例 讨论 ActionScript3.0中发送和读取数据由新的URLLoader及其

问题
  我想从XML文档中或服务端脚本产生的XML中读取XML数据
解决办法
  使用URLLoader.load() 方法且设置dataFormat属性为DataFormat.TEXT读取数据,通过complete事件处理函数转换载入的数据为XML实例
讨论
  ActionScript3.0中发送和读取数据由新的URLLoader及其相关类完成,读取XML也没有什么特殊的地方。
  读取XML文件的步骤如下:首先创建URLLoader实例以简单文本形式读取数据,其dataFormat 属性必须设置为DataFormat.Text,监听并添加complete事件处理函数,看下面的例子演示:

  1. package{  
  2.  
  3.        importflash.display.*;  
  4.        importflash.events.*;  
  5.        importflash.net.*;  
  6.        importflash.util.*;  
  7.  
  8.       public class LoadXMLExample extends Sprite  
  9.      {  
  10.          public function LoadXMLExample( )  
  11.         {  
  12.           var loader:URLLoader=new URLLoader( );  
  13.           loader.dataFormat=DataFormat.TEXT;  
  14.           loader.addEventListener(Event.COMPLETE,handleComplete);  
  15.           loader.load(newURLRequest("example.xml" ));  
  16.          }  
  17.  
  18.          private functionhandleComplete(event:Event):void  
  19.         {  
  20.  
  21.          try{  
  22.          //CuPlayer.com:thedownlaodedtextintoan XMLinstance  
  23.          var example:XML=new XML( event.target.data);  
  24.          //At thispoint,exampleisreadytobeused withE4X  
  25.          trace(example);  
  26.  
  27.         }catch( e:TypeError){  
  28.  
  29.          //CuPlayer.com:If wegethere,thatmeansthedownloadedtextcould  
  30.          //notbeconvertedintoanXMLinstance,probablybecause  
  31.          //it isnotformattedcorrectly.  
  32.          trace("CouldnotparsetextintoXML" );  
  33.          trace(e.message );  
  34.        }  
  35.     }  
  36.   }  

上面的例子中之所以用 try...catch 块,是考虑到读取的数据有可能不是 XML 格式数据,
TypeError 异常就是不能成功转换为XML实例时抛出的。
 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器