加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

flex URLRequest 加载XML

发布时间:2020-12-15 05:02:23 所属栏目:百科 来源:网络整理
导读:问题 我想从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事件处理函数,看下面的例子演示:

?

package{

       importflash.display.*;
       importflash.events.*;
       importflash.net.*;
       importflash.util.*;

      public class LoadXMLExample extends Sprite
     {
         public function LoadXMLExample( )
        {
          var loader:URLLoader=new URLLoader( );
          loader.dataFormat=DataFormat.TEXT;
          loader.addEventListener(Event.COMPLETE,handleComplete);
          loader.load(newURLRequest("example.xml" ));
         }

         private functionhandleComplete(event:Event):void
        {

         try{
         //Convert thedownlaodedtextintoan XMLinstance
         var example:XML=new XML( event.target.data);
         //At thispoint,exampleisreadytobeused withE4X
         trace(example);

        }catch( e:TypeError){

         //If wegethere,thatmeansthedownloadedtextcould
         //notbeconvertedintoanXMLinstance,probablybecause
         //it isnotformattedcorrectly.
         trace("CouldnotparsetextintoXML" );
         trace(e.message );
       }
    }
  }
}





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

?

摘自coolbook

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读