一、创建XML类

1、把字符串对象转换为XML:

var xmlStr:String="<students><student><name>吕布</name><sex>男</sex><age>27</age></student>";
xmlStr+="<student><name>貂蝉</name><sex>女</sex><age>26</age></student></students>";
var rootXML:XML=new XML(xmlStr);
trace(rootXML);

2、调用XML类,(以下实例以此MXL为样本):

var rootXML:XML=
   <students>
      <student>
          <name>刘备</name>
          <sex>男</sex>
          <age>35</age>
      </student>
      <student>
          <name>吕布</name>
          <sex>男</sex>
          <age>38</age>
      </student>
      <student>
          <name>貂蝉</name>
          <sex>女</sex>
          <age>22</age>
      </student>
 </students>;

3、添加子节点(节点存在,则修改,不存在则添加):

rootXML.student[0].mz="回族";
//使用节点变量
var newChild:String="mz";
rootXML.student[1][newChild]="苗族";
//使用节点索引
rootXML.children()[2].mz="汉族";

4、添加节点内容:

//添加子节点
var newXML:XML=
    <fen>
          <java>99</java>
          <delphi>86</delphi>
          <flex>93</flex>
    </fen>;

//位于其它子节点尾部。
rootXML.student[0].appendChild(newXML);
//位于其它子节点首部
rootXML.student[1].prependChild(newXML);

//添加同级节点
newXML=
    <student>
        <name>西施</name>
        <sex>女</sex>
        <age>18</age>
    </student>
//选择节点之前
rootXML.insertChildBefore(rootXML.student[0],newXML);
//选择节点之后
rootXML.insertChildAfter(rootXML.student[1],newXML);

5、添加属性(有则修改,无则添加)

rootXML.student[0].@id="1000"
var newid:String="id";
rootXML.student[1].@[newid]="2000";

6、读取属性

trace(rootXML.student[0].@id);
trace(rootXML.student[0].attribute("id"));

7、查找遍历节点和属性

//根据节点内容查节点
trace(rootXML.student.(name=="刘备"));
//根据节点属性查节点
trace(rootXML.student.(@id=="1002"));
//得到某节点的父节点内容
trace(rootXML.student[0].name.parent());
var i:int=0;
for(i=0;i<rootXML.children().length();i++){
    //打印每个学生的信息
    trace(rootXML.children()[i].toString());
    //打印每个学生的名称
    trace(rootXML.children()[i].name);
    //打印每个学生的性别
    trace(rootXML.student[i].sex);
    //打印每个学生的的属性ID
    trace(rootXML.children()[i].@id);
    //打印节点名称(标签,不是值)
    trace(rootXML.children()[i].name());

    //遍历每个节点的所有属性标签名称
    var attLen:int=rootXML.children()[i].attributes().length();
    for(var j:int=0;j<attLen;j++){
        //属性名称
        var attName:String=rootXML.children()[i].attributes()[j].name();
        trace(attName);
        //属性值
        var attValue:String=rootXML.children()[i].@[attName];
        trace(attValue);

    }
}

8、删除节点或属性

//删除节点
delete rootXML.student[0].sex;
//删除属性
delete rootXML.student[0].@id;

--------------------------------------------------------------------------------------------------------------------

文章来源于:http://www.cnblogs.com/lovemoon714/archive/2012/05/28/2521315.html

Flex XML的更多相关文章

  1. Flex XML搜索、匹配

    - <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx=" ...

  2. Flex XML/XMLList 常用操作

    1       XML.XMLList操作 Flex对xml提供了很多强大而灵活的操作.相对于其他语言,flex对xml的格式要求不那么苛刻,只要符合基本格式语法的字符串,flex能非常简单的转换成x ...

  3. Flex xml编辑器(老外写的)

    github上的一个项目老外写的xml编辑器,灵活利用了Tree的labelFunction实现节点运行时展现.开源地址是 https://github.com/softinsure/XML-Edit ...

  4. Flex 远程加载crossdomain.xml 解决

    局域网部署Flex项目的时候加载不出来,分析了一下http发现在请求连接“http://fpdownload.adobe.com/pub/swz/crossdomain.xml”,这里出了问题,跨域的 ...

  5. Flex之DataGrid和Tree控件的数据源XML格式

    1.flex的完整代码: <?xml version="1.0" encoding="utf-8"?> <s:Application xmln ...

  6. Flex xxx-app.xml配置

    <?xml version="1.0" encoding="UTF-8"?>  <application xmlns="http:/ ...

  7. Flex与Java交互(Flex调用java类展示数据)解析xml展示数据

    Flex与java通信最简单例子(详细说明了各种需要注意的配置):http://blog.csdn.net/u010011052/article/details/9116869 Flex与java通信 ...

  8. 由“Jasperrpeorts 4.1.2升级到5.1.2对flex项目的解析”到AS3 带命名空间的XML的操作

    原文同步至:http://www.waylau.com/from-jasperrpeorts-4-1-2-upgraded-to-5-1-2-parsing-of-flex-projects-to-t ...

  9. 【Flex】读取本地XML,然后XML数据转成JSON数据

    干了一年H5,最近被要求写编辑器,Electron等级还不够,写不了,只有重新拿起as3,用flex,最近写到数据表编辑模块,有这部分功能,基本完成 . package utils { /** * 模 ...

随机推荐

  1. 【转】Github轻松上手5-站在巨人的肩膀上(Fork)

    转自:http://blog.sina.com.cn/s/blog_4b55f6860100zzj3.html 有时候你可能想给别人的项目出把力,或者想以别人的项目作为自己项目的起点,在Github里 ...

  2. GitHub入门:如何上传与下载工程?

    由于经常要在家写代码,所以需要有个能够方便访问代码管理工具.最近尝试了一下GitHub.经过了一翻纠结之后,基本上掌握了他的使用方式.  要使用GitHub需要首先在其网站上进行注册.其官方网站是ht ...

  3. ppt打不出中文

    1. 安装微软输入法2007就可以解决了 这个是微软的一个bug,在powerpoint 2007里面如果监测到你的注册表里面没有微软拼音输入法2007的话,就不能够打出中文. 2. 如果你不想安装微 ...

  4. OFBIZ+ECLIPSE

    1. 首先要安装好OFBIZ,参考<OFBIZ安装>. 2. 安装ECLIPSE. 3. 安装FreeMarker插件,这是OFBIZ的模版引擎.在"Eclipse Market ...

  5. 【树莓派2B倒腾日志】之安装系统及配置

    15号树莓派到手到现在,折腾了也有一小周,自己摸索着,装了系统,登上SSH,更新了源,连了VNC,换上wifi,亮了小灯.再到今天捣鼓了下数码管,回头想想,该写个日志记录一下这一周的所得,自己总结也方 ...

  6. effective c++:private继承

    如果class间使用private继承关系,编译器就不会自动的将派生类转换为基类,而且private继承而来的成员都变为private属性. private继承意味着根据某物实现出,当我们想要避免重复 ...

  7. WinForm 中两个窗口之间传递数据

    方法有很多种,这里介绍项目中使用的两种 一.通过委托+事件的方法进行传值 (点击Form2中的button1按钮,将会把Form2中的textbox.text 传给Form1中的 lable.text ...

  8. Scrum之Sprint会议

    Scrum的项目过程有一系列的Sprint组成. Sprint的长度一般控制在2-4周. 通过固定的周期保持良好的节奏. 产品的设计.开发.测试都在Sprint期间完成. Sprint结束时交付可以工 ...

  9. 在Cubieboard上关闭irqbalance服务避免内存泄漏

    十一一个假期回来,顺手看了看自己的cubieboard运行状态怎么样 aria2正常: btsync正常: samba正常: 很好, 顺手htop一下,已经开机了13天了,CPU使用率4%,内存使用率 ...

  10. 【数据结构与算法分析——C语言描述】第二章总结 算法分析

    算法 算法(algorithm)是为求解一个问题需要遵循的.被清楚地指定的简单指令的集合. 数学基础 四个定义: 1.大O表示法: 如果存在正常数 c 和 n0 使得当 N ≥ n0时,T(N) ≤ ...