• flex中创建XML对象


    复制代码

     1 var flexXML:XML=
     2 
     3 <RIA>
     4 
     5          <FlashPlayer>
     6 
     7                    <Flash>Flash CS3</Flash>
     8 
     9                    <Flex>Flex3</Flex>
    10 
    11          </FlashPlayer>
    12 
    13          <Ajax>
    14 
    15                    <GoogleAjax>GoogleAjax1.0</GoogleAjax>
    16 
    17          </Ajax>
    18 
    19 </RIA>
    20 
    复制代码

    注意:使用XML表达式的时候与一般的赋值语句不同。语句结束没有“;”标识符,直接结束。XML字符串也不需要通过引号或者单引号进行限定。

           第二种方式是通过XML对象的构造函数的方式构建XML对象。如下代码所示。

    复制代码

     1var flexXMLStr:String="<RIA>"
     2
     3                    +"<FlashPlayer>"
     4
     5                    +"<Flash>Flash CS3</Flash>"
     6
     7                    +"<Flex>Flex3</Flex>"
     8
     9                    +"</FlashPlayer>"
    10
    11                    +"<Ajax>"
    12
    13                    +"<GoogleAjax>GoogleAjax1.0</GoogleAjax>"
    14
    15                    +"</Ajax>"
    16
    17                    +"</RIA>";
    18
    19var flexXML1:XML=new XML(flexXMLStr);
    20
    复制代码

         第三种方式是通过加载外部XML文件的方式构建XML对象。这种加载的本质其实也是使用构造函数的方式进行加载。XML文件RIA.xml文件内容如下。

    复制代码

     1<RIA>
     2
     3         <FlashPlayer>
     4
     5                   <Flash>Flash CS3</Flash>
     6
     7                   <Flex>Flex3</Flex>
     8
     9         </FlashPlayer>
    10
    11         <Ajax>
    12
    13                   <GoogleAjax>GoogleAjax1.0</GoogleAjax>
    14
    15         </Ajax>
    16
    17</RIA>
    18
    19可以通过制定RIA.xml文件位置的方式加载该文件内容到XML对象中,。代码如下所示。
    20
    21var flexXML2:XML;
    22
    23var flexLoader:URLLoader = new URLLoader();
    24
    25var flexRequest:URLRequest = new URLRequest("RIA.xml");
    26
    27function onComplete(event:Event):void
    28
    29{
    30
    31         var flexLoader:URLLoader = event.target as URLLoader;
    32
    33if (flexLoader != null)
    34
    35{
    36
    37         flexXML2 = new XML(flexLoader.data);
    38
    39         trace(flexXML2.toXMLString());
    40
    41}

    42
    43else
    44
    45{
    46
    47         trace("加载错误!");
    48
    49}

    50
    复制代码

    在上面的代码中加载外部的资源是异步进行的。需要声明一个事件处理机制,通过这个事件监听来响应加载结束XML的事件。

    注意:在创建XML对象时,XML内容必须遵循XML的规范。读者可以在www.w3c.org网站上详细察看这个规范。

    以上三种方式是最常用的创建XML对象的方法。还会有一些特殊的创建XML对象的方法,例如使用XMLSocket对象构建XML对象。XMLSocket对象会在稍后内容讲解。

    创建的XML对象中,有一系列属性和方法进行简单的XML处理。常用属性如表4.5所示。常用方法如表所示。

    表 XML对象常用属性

    属性名称
     属性分类
     属性说明
     
    ignoreComments
     注释与说明属性
     取值ture或false,表明读取XML时是否忽略注释。
     
    ignoreProcessingInstructions
     注释与说明属性
     取值ture或false,表明读取XML时是否忽略说明和介绍。
     
    ignoreWhitespace
     空白
     取值ture或false,表明是否忽略XML内容中,纯粹的空白。
     
    prettyIndent
     格式属性
     取值true或false,表明是否输出成字符串时带有缩紧。
     
    prettyPrinting
     格式属性
     取值true或false,表明打印输出时有严格的打印格式。
     

    表  XML对象常用方法

    方法名称
     方法分类
     方法说明
     
    appendChild
     操作节点方法
     添加节点到XML对象的尾部。参数为一个XML对象或者XML表达式。
     
    child
     操作节点方法
     返回XML对象的子节点,参数为子节点的名称
     
    children
     操作节点方法
     返回XML对象的所有子节点,返回类型为XMLList类型。
     
    elements
     操作节点方法
     返回XML对象的子节点或者属性,参数为子节点或属性名称。
     
    insertChildAfter
     操作节点方法
     插入节点到指定节点之后,参数为指定节点。
     
    insertChildBefore
     操作节点方法
     插入节点到指定节点之前,参数为指定的节点。
     
    parent
     操作节点方法
     返回当前节点的父节点。
     
    prependChild
     操作节点方法
     返回当前节点的前一个节点。
     
    attribute
     操作属性方法
     返回指定的属性,参数为指定的属性名称。
     
    attributes
     操作属性方法
     返回XML对象的所有属性。
     
    hasComplexContent
     内容操作方法
     判断当前节点内容是否为复杂内容,返回值为true或false。复杂内容是指包括有子节点的XML对象。
     
    hasSimpleContent
     内容操作方法
     判断当前节点内容是否为简单内容,返回指为true或false。简单内容是指单一的字符串内容。
     
    toString
     内容操作方法
     将XML对象输出为字符串内容。
     
    toXMLString
     内容操作方法
     输出为XML字符串的内容。
     
    copy
     对象操作方法
     拷贝XML对象的副本,返回值为当前节点的内容。
     
    valueOf
     对象操作方法
     返回指定节点内容,不包括节点的表示。
     
    length
     对象操作方法
     返回当前XML对象下一级节点个数。
     

    在操作XML对象的过程中还会经常使用XMLList对象。XMLList对象的方法与XML对象很像,使用起来具有统一性。XML的整体结构是一个树型结构,所以在使用树型结构的过程中,通过XML和XMLList对象的使用可以达到整体与部分一致的操作。这样,就会使操作XML整体与操作XML对象的一部分一致。

  • 相关阅读:
    phpexcel 字符串转码
    thinkphp 3.2 linux二级目录安装
    linux 系统、命令、软件
    thinkphp3.2和phpexcel导入
    苹果手机微信分享代码失效
    thinkphp3.2与phpexcel带图片生成 完美案例
    thinkphp3.2与phpexcel基础生成
    thinkphp 3.2加载类
    thinkphp 3.2与phpexcel
    thinkphp 导出exl功能
  • 原文地址:https://www.cnblogs.com/tianlangshu/p/2537523.html
Copyright © 2020-2023  润新知