Flex 中 xml 与 ArrayCollection 之间的相互转换
2017-02-07 22:01
225 查看
xml 于 ArrayCollection 之间的相互转换 <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" creationComplete="application1_creationCompleteHandler()" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <fx:Script> <![CDATA[ import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.events.FlexEvent; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; private var xml:XML; [Bindable] private var dgdp:ArrayCollection=new ArrayCollection; protected function application1_creationCompleteHandler():void { http.send(); } protected function http_resultHandler(event:ResultEvent):void { xml = event.result as XML; for each(var xml:XML in event.result..des){ var o:Object=new Object(); o.id=xml.@id; o.name=xml.@name; o.score=xml.@score; dgdp.addItem(o); } arrToXml(); } protected function http_faultHandler(event:FaultEvent):void { // TODO Auto-generated method stub } protected function arrToXml():void{ var root:XML=<root/>; for(var i:int=0;i<dgdp.length;i++){ var node:XML=new XML(<node/>); node.id=dgdp[i].id; node.name=dgdp[i].name; node.score=dgdp[i].score; root.appendChild(node); } Alert.show(root.toXMLString()); } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> <s:HTTPService id="http" method="POST" useProxy="false" url="data/data.xml" resultFormat="e4x" result="http_resultHandler(event)" fault="http_faultHandler(event)"/> </fx:Declarations> <s:DataGrid id="dg" dataProvider="{dgdp}" x="202" y="41" width="346" height="164" requestedRowCount="4"> <s:columns> <s:ArrayList> <s:GridColumn dataField="id" headerText="id"></s:GridColumn> <s:GridColumn dataField="name" headerText="name"></s:GridColumn> <s:GridColumn dataField="score" headerText="score"></s:GridColumn> </s:ArrayList> </s:columns> </s:DataGrid> </s:Application>
data.xml
<?xml version="1.0" encoding="UTF-8"?> <data value="test01"> <data1 id="1" value="test01"> <id id="1000" value="test02" /> <name name="test1" value="test03" /> <des id="1000" name="test1" score="75" classes="1class" value="test04" /> </data1> <data2 id="2" value="test02"> <id id="1001" value="test06" /> <name name="test2" value="test07" /> <des id="1001" name="test2" score="85" classes="2class" value="test08" /> </data2> </data>
相关文章推荐
- flex xml和arraycollection相互转换
- flex xml和arraycollection相互转换
- (FLEX生成饼图)关于FLEX中的XML转换为ArrayCollection的应用.
- 在不同格式的XML文档之间相互转换(一)基本转换
- java对象与xml 之间相互转换
- java:xml与对象之间相互转换
- jaxb2与xml之间相互转换
- jaxb2与xml之间相互转换
- XStream实现javabean与xml之间相互转换
- 对xml的处理_Dom4j入门_Dom4j与w3c之间的Document相互转换
- 关于Java对象和XML之间的相互转换
- Json-lib 实现 json,java 对象,xml 之间相互转换
- Xml字符串与C#对象之间相互转换
- FLEX XML XMLList XMLListCollection ArrayCollection相互转换
- 使用 XStream实现JavaBean 与 XML/JSON 之间相互转换
- 用Apache Commons Betwixt2 在XML与Java对象之间相互转换
- XMLGregorianCalendar类型和Date类型之间的相互转换
- 序列化对象与XML对象之间相互转换
- 实现Python对象与xml之间的相互转换
- C# XML与Json之间的相互转换