flex xml和arraycollection相互转换
1、arraycollection转化为xml,代码如下:
//动态生成树形结构
public static function flatArrayToXML(arr:Object,rootname:String=null,nodename:String=null, outputString:Boolean=false):Object{
if (arr is Array){
}else if ( arr is ArrayCollection){
arr= ArrayCollection(arr).source;
}else if (arr == null){
return null;
}
if (rootname==null) rootname="root";
var xmlstr:String="<"+rootname+" "+"label='套餐项目'>";
var xmlList:XMLList=new XMLList();
var alength:int=arr.length;
if (alength > 0)
{
for (var i:int=0; i < alength; i++)
{
xmlstr+=objToSimpXML(arr[i].name,0,nodename,true);
}
xmlstr +="</"+nodename+">";
}
}
}
xmlstr+="</"+rootname+">";
trace(xmlstr);
var xmldoc:XMLDocument=new XMLDocument(xmlstr);
if (outputString==true)
return xmldoc==null ? "": xmldoc.toString();
var xml:XML=new XML(xmldoc);
return xml;
}
//将对象转换为简单xml.<node property1='value1' property2='value2'/>这种形式
//obj转换源对象,仅支持简单对象,如果对象的属性也是一个对象则不进入递归,
//nodename可以自定义节点名称, 默认是"node"
//是否输出为字符串, 默认转换为xml, 如果为true则将xml变为字符串
//return 值类型根据outputString 来决定, 可能是XML,可能是String
public static function objToSimpXML(ri_name:String,nodeorchild:int, nodename:String=null, outputString:Boolean=false):String{
if(ri_name==null) return null;
if (nodename==null)nodename="node";//节点名字
var str:String="<"+nodename;
str+=" label='"+filterXMLString(ri_name)+"'";节点中属性的名字
nodeorchild == 1?str+="/>":str+=">";
//
相关文档:
经常会用到xml文件,内容加载, 如果使用linq xml树加载,需要通过XElement类,一种方式是以字符串的形式加载,另外一种方式是以文件形式加载。 1.以字符串形式加载。 在XElement类中,通过静态的Parse()方法 ......
文章转自【PHP探路者】
XML 应用于 web 开发的许多方面,常用于简化数据的存储和共享。
如果需要在 HTML 文档中显示动态数据,那么每当数据改变时将花费大量的时间来编辑 HTML,
XML 可以把数据从 HTML 中分离开来。
通过 XML,数据能够存储在独立的 XML 文件中。这样你就可以专注于使用 HTML 进行布局和显示,并确保修 ......
前期准备:
点击File菜单 -> New -> MXML Component,然后弹出一个对话框。
在对话框中输入组件名,选择此组件继承的类型,如:Canvas,DataGrid,ComboBox …… 等。
然后选择组件的大小,点击Finish即可。
关于组件继承的类型,假设Based on  ......
XML(Extensible Markup Language)即可扩展标记语言,它与HTML一样,都是SGML(Standard Generalized Markup Language,标准通用标记语言)。Xml是Internet环境中跨平台的,依赖于内容的技术,是当前处理结构化文档信息的有力工具。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用 ......