• 我学Flash/Flex(2):AS3读取XML文件内容


    任何一种语言,读取XML文件的功能基本都是必不可少的。使用AS3读取XML文件,需要使用到以下几个类:

    (1)URLRequest类,URLRequest可捕获单个 HTTP 请求中的所有信息。

       URLRequest 对象将传递给 Loader、URLStream 和 URLLoader 类的 load() 方法和其他加载操作,以便启动 URL 下载;

    (2)URLLoader类,以文本、二进制数据或 URL 编码变量的形式从 URL 下载数据;

    (3)XML类,将对象转换成 XML 对象。

    具体代码如下:

    View Code
     1     import flash.events.Event;
    2 import flash.events.IOErrorEvent;
    3 import flash.net.URLLoader;
    4 import flash.net.URLRequest;
    5
    6 //XML读取
    7 public class XmlReader
    8 {
    9 private var _myXML:XML = null;
    10
    11 private var _xmlString:String = "";
    12
    13 public function get XMLstring():String
    14 {
    15 return _xmlString;
    16 }
    17
    18 public function XmlReader()
    19 {
    20 //构造函数
    21 }
    22
    23 //读取文件
    24 public function Read(xmlPath:String):void
    25 {
    26 //创建URLRequest
    27 var request:URLRequest = new URLRequest(xmlPath);
    28
    29 //创建URLLoader对象
    30 var loader:URLLoader = new URLLoader();
    31 loader.load(request);
    32
    33 //添加事件
    34 loader.addEventListener(Event.COMPLETE,onComplete);
    35 loader.addEventListener(IOErrorEvent.IO_ERROR,onError);
    36 }
    37
    38 //读取文件完成时执行
    39 private function onComplete(event:Event):void
    40 {
    41 var temp:URLLoader = event.target as URLLoader;
    42
    43 if (temp != null)//验测读取数据是否错误
    44 {
    45 _myXML = new XML(temp.data);//创建XML实例_myXML,读取xml的数据
    46 _xmlString = _myXML.toString();
    47 trace(_myXML.toXMLString());//输出_myXML的数据
    48 }
    49 else
    50 {
    51 trace("Error:"+event);//输出错误
    52 }
    53
    54 }
    55
    56 //IO错误
    57 private function onError(event:Event):void
    58 {
    59 trace("IO Error:"+event);
    60 }
    61 }

    示例xml文件Class.xml:

    View Code
     1 <?xml version="1.0" encoding="UTF-8"?>
    2 <Class>
    3 <Student>
    4 <Name>xiaoming</Name>
    5 <Age>13</Age>
    6 <Sex>Male</Sex>
    7 </Student>
    8 <Student>
    9 <Name>xiaozhang</Name>
    10 <Age>14</Age>
    11 <Sex>Male</Sex>
    12 </Student>
    13 <Student>
    14 <Name>xiaoli</Name>
    15 <Age>15</Age>
    16 <Sex>Male</Sex>
    17 </Student>
    18 <Student>
    19 <Name>xiaoyang</Name>
    20 <Age>16</Age>
    21 <Sex>Female</Sex>
    22 </Student>
    23 </Class>

    FB控制台输出结果:

    image
    这样一个简单的读取XML文件的类就好了,它还可以继续完善。

  • 相关阅读:
    ExtJS实战(3)spring
    在 Lotus Domino 7 应用程序中利用 IBM DB2 集成特性
    ExtJS实战(2)hibernate
    ExtJS实战(4)struts
    春节后找工作被面试的经历,好岗位分享给还在找工作中的软件开发爱好者们【转】
    hack专讲
    春节后面试别人的经历总结之二,好岗位分享给还在找工作中的软件开发爱好者们【转】
    asp 去除HTML格式
    创业型公司或发展中公司请不要随意给员工开空头支票~~!!!
    可展开滚动的QQ客服代码【蓝底客服中心】
  • 原文地址:https://www.cnblogs.com/pszw/p/2386035.html
Copyright © 2020-2023  润新知