Flex 操作XML总结

 


//1. 加载外部XML文件

		public function loadXML(fileURL:String):XML
		{
			var result:XML;
			var f:File = new File(fileURL);
			if ( f.exists ) {
				try {
					var fs:FileStream = new FileStream();
					fs.open(f, FileMode.READ);
					result = XML(fs.readUTFBytes(fs.bytesAvailable));
					
					fs.close();
				} catch (e:Error) {
					
				}
			} 
			return result;
		}

//2.加载字符串的XML

var str:String = "<root></root>";
var xml:XML = new XML(xmlstr);

// 3.个人不建议用的方法:调用XML类,(以下实例以此MXL为样本):

var xml:XML = <root></root> 

 

 

//遍历节点

for each(var xml:XML in configxml.children()){
	var pagevo:PageVO = new PageVO();
	pagevo.id = xml.@id;
	pagevo.type = xml.@type;
				
	//bgimage
	var bgimage:BgImageVO = new BgImageVO();
	bgimage.id = xml.bgImage.@id;//bgImage节点的id属性
	bgimage.content = xml.bgImage.toString();
	pagevo.bgImage = bgimage;
}


//遍历指定名称的节点

for each( var txtxml:XML in xml.child("text")){
	var textvo:TextVO = new TextVO();
	textvo.id = txtxml.@id;
	textvo.color = txtxml.@color;
	textvo.fontSize = txtxml.@fontSize;
	textvo.fontWeight = txtxml.@fontWeight;
	textvo.fontFamily = txtxml.@fontFamily;
	textvo.fontStyle = txtxml.@fontStyle;
	textvo.width = txtxml.@width;
	textvo.height = txtxml.@height;
	textvo.x = txtxml.@x;
	textvo.y = txtxml.@y;
//	textvo.index = txtxml.@index;
	textvo.content = txtxml.toString();
					
	pagevo.textLst.addItem(textvo);
				}

//添加节点内容

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);
 
删除节点或属性
 
//删除节点
delete rootXML.student[0].sex;
//删除属性
delete rootXML.student[0].@id;





 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值