【转】AS3操作XML,增加、删除、修改
var i:Number=0;//用于下面循环 var webcontent:String="Sontin's Blog <b>Welcome to 终吾一生</b>"; var myXML:XML=<websites> <site name="Sontin's Blog" url="http://www.ldyy8.com"> <description>{webcontent}</description> <pagebyte>1000</pagebyte> </site> <site name="百度" url="http://www.baidu.com"> <description>百度一下,就知道</description> <pagebyte>500</pagebyte> </site> <site name="谷歌" url="http://www.google.com"> <pagebyte>100</pagebyte> </site> </websites>; trace("--------------------------初始XML--------------------------------------"); trace(myXML); //先查找吧,下面操作都让XML变样了。 trace("--------------------------查找一--------------------------------------"); //双点号(..),又称为后裔访问符(the descendent accessor),访问当前元素的所有子元素 trace("找到[description]个数:"+myXML..description.length()); trace(myXML..description); //myXML.site[0]..description; 这样同样正常的 trace("--------------------------查找二--------------------------------------"); //通配符(*) trace("通配符:"+myXML.site[0].@*.toXMLString()); //查第一个节点的所有属性 trace("site节点的所有属性:"); trace(myXML.site.@*.toXMLString()); //查所有 site节点的所有属性 trace("--------------------------查找三--------------------------------------"); //大于 >,小于<,等于 == (双等哦,要不变修改了) trace(myXML.site.(pagebyte==500)); trace(myXML.site.(pagebyte>500)); //**必须每个site节点下都有pagebyte元素 //把中间的括号去了看看,会有新发现哦。 trace("--------------------------查找四--------------------------------------"); //查属性 trace(myXML.site.(@name=="谷歌")); //**必须每个site节点下都有name属性 trace("--------------------------查找五,正则--------------------------------------"); trace(myXML.site.(pagebyte.match(/^1\d+/))); //查找pagebyte第一个字符是 1的 trace("name中第一个字母是S的:"+myXML.site.(@name.match(/^S\w+/))); //**必须每个site节点下都有pagebyte元素,正则我也不太会用基础的表示一下好了。呵呵 //添加 myXML.site[0].author=new XML();//添加一个空白节点(其实不用new也同样可以执行添加) myXML.site[0].author.@name="子锡";//添加一个属性 myXML.site[0].author.@email="sontin@qq.com";//添加邮箱属性 myXML.site[0].author.school="社会大学";//添加一个子节点 //还有一些API 这就不提了,主要也就4项 /* appendChild(child:Object):XML 在当前子元素列表之后添加 prependChild(child:Object):XML 在当前子元素列表之前添加 insertChildAfter(child1:Object,child2:Object):* 在子元素child1之后添加 insertChildBefore(child1:Object,child2:Object):* 在子元素child1之前添加 */ //修改 myXML.site.description[0]=myXML.site.description[0]+" 摆正心态,做好自己。"; myXML.site.@name[1]=myXML.site.@name[1]+"一下"; //删除(很简单,其实就是修改) delete myXML.site[1].@url; //删除节点属性 delete myXML.site[1].description; //删除节点指定子元素 //myXML.site[1]="";//删除其下所有子节点(元素) //delete myXML.site[1];//删除该节点,包括其下子节点(元素) //myXML=null; //删除整个XML呢?null就好了,但下面要判断哦; if (myXML!=null) { trace("----------------------显示指定节点内容,没有输出空串--------------------------"); trace(myXML.site.description[0]); trace(myXML.site[0].description);//建议 trace("---------------------循环显示site-------------------------------------------"); //.length()为统计个数 for (i=0; i<myXML.site.length(); i++) { trace("第" + i + "个:" + myXML.site[i]); } trace("----------------------循环显示site.name------------------------------------------"); trace(myXML.site.@name); //.length()为统计个数 for (i=0; i<myXML.site.@name.length(); i++) { trace("第" + i + "个name:" + myXML.site.@name[i]); } //这样也可以(建议使用,这样更能体现对象的意义) trace("---这样也可以:"); for (i=0; i<myXML.site.length(); i++) { trace("第" + i + "个name:" + myXML.site[i].@name); } trace("--------------------------最终的site--------------------------------------"); trace(myXML.site); trace("--------------------------最终的XML--------------------------------------"); trace(myXML); }
原文链接:http://bbs.9ria.com/blog-229904-21550.html
【转】AS3操作XML,增加、删除、修改的更多相关文章
- 在Javascript操作JSON对象,增加 删除 修改
在Javascript操作JSON对象,增加删除修改全有的,详情见代码 <script type="text/javascript"> var jsonObj2 = { ...
- Nodejs之MEAN栈开发(九)---- 用户评论的增加/删除/修改
由于工作中做实时通信的项目,需要用到Nodejs做通讯转接功能,刚开始接触,很多都不懂,于是我和同事就准备去学习nodejs,结合nodejs之MEAN栈实战书籍<Getting.MEAN.wi ...
- AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层
AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层 AutoCad 二次开发 .net 之层表的增加 删除 修改图层颜色 遍历 设置当前层我理解的图层的作用大概是把 ...
- [JavaWeb基础] 004.用JSP + SERVLET 进行简单的增加删除修改
上一次的文章,我们讲解了如何用JAVA访问MySql数据库,对数据进行增加删除修改查询.那么这次我们把具体的页面的数据库操作结合在一起,进行一次简单的学生信息操作案例. 首先我们创建一个专门用于学生管 ...
- .net操作xml文件(新增.修改,删除,读取) 转
今天有个需求需要操作xml节点.突然见遗忘了许多.上网看了些资料.才整出来.脑袋真不够用.在这里把我找到的资料共享一下.方便以后使用.本文属于网摘/ 1 一.简单介绍2 using System.Xm ...
- .net操作xml文件(新增.修改,删除,读取)---datagridview与xml文件
参考网址: http://www.cnblogs.com/liguanghui/archive/2011/11/10/2244199.html 很详细的,相信能给你一定的帮助.
- javascript操作JSON对象,增加 删除 修改
JS只能输入数字,数字和字母等的正则表达式 1.文本框只能输入数字代码(小数点也不能输入) <input onkeyup="this.value=this.value.replace( ...
- ztree树形菜单的增加删除修改和换图标
首先需要注意一点,如果有研究过树形菜单,就会发现实现删除和修改功能特别简单,但是增加却有一点复杂.造成这个现象是ztree树形菜单的历史遗留问题.大概是之前的版本没有增加这个功能,后来的版本加上了这个 ...
- Sql增加,删除,修改列
1. 查看约束条件 - MySQL: SELECT * FROM information_schema.`TABLE_CONSTRAINTS` where table_name = 'book'; - ...
随机推荐
- ABP入门系列(11)——编写单元测试
ABP入门系列目录--学习Abp框架之实操演练 源码路径:Github-LearningMpaAbp 1. 前言 In computer programming, unit testing is a ...
- Kickstart Practice Round 2017 Google
Problem B. Vote A and B are the only two candidates competing in a certain election. We know from po ...
- css修炼宝典
前端岗位目前确实十分火热,但是就业压力也很大:前一段时间与大学同学交谈,他向我哭诉说去一个机构学习了前端工程师,我心底里为他高兴,因为他马上就可以月薪突破10K了,可是不幸的是他说去北京面试一个月,还 ...
- Android Studio 代码自动提示无效
Android Studio代码自动提示无效(not available in Power Save mode)的解决办法 问题描述: 今天用Android studio敲代码,突然间就没有代码提示了 ...
- Visual Studio 2017正式版离线安装及介绍
Visual Studio 2017 RTM正式版离线安装及介绍. 首先至官网下载:https://www.visualstudio.com/zh-hans/downloads/ VS 2017 正式 ...
- ThinkPhp模板转Flask模板
Template Converter 网上的PHP资源很多,项目要用Python,所以想起做一个模板转换器,从ThinkPhp转成Flask的Jinja模板. 直接指定两个目录,将目录下的模板文件转换 ...
- SQL server 数据库 ——聚合函数(一列 多行,值类型)
聚合函数 5种函数: 1.max最大值 select max(price) from car where code='c024' 2.min最小值 select * from car wher ...
- 算法模板——sap网络最大流 1(非递归+邻接矩阵)
实现功能:首行输入N,M,S,T,代表这张图N个点,M条边,源点为S,汇点为T:接下来T行输入个边的出发点.终点和权值:输出最大流 原理:sap网络流算法(详见百度百科,个人觉得这个模板已经不错了,虽 ...
- js闭包深度讲解
js的闭包是学习js过程中的重点,但是不得不说也是一个难点呀,其涉及到了js中的很多概念.我在学习js中也遇到了很多问题,这篇文章算是一个对闭包的总结,文章主要内容为闭包的基本知识点与对其理解上的一些 ...
- 优雅的使用sublime写lua~ sublime lua相关必装插件推荐~~
缘起 lua脚本语言虽好,代码写得飞快,可是写错了调试起来却很困难,lua使用者经常容易犯得一个错误是--写错变量名了,if end 嵌套太多没匹配~,多打了一个逗号, 假设定义了一个变量 local ...