zoukankan      html  css  js  c++  java
  • 我学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文件的类就好了,它还可以继续完善。

  • 相关阅读:
    ORA-28040: No matching authentication protocol
    kettle增量抽取数据--高效抽取方式
    为什么MySQL的索引要使用B+树而不是其它树形结构?比如B树?
    echarts饼图指示线文字换行
    数据库概论
    Java学习笔记
    案例分析
    软件工程作业3
    软件工程作业2
    软件工程作业1
  • 原文地址:https://www.cnblogs.com/pszw/p/2386035.html
Copyright © 2011-2022 走看看