日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Flex【原创】Xml与Object互转/读写本地Xml文件

發(fā)布時(shí)間:2023/12/10 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Flex【原创】Xml与Object互转/读写本地Xml文件 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

  最近操作Xml文件比較多,因此封裝了一下Xml文件操作類

  主要功能包括:?? 1.Xml 轉(zhuǎn) Object

          2.Object 轉(zhuǎn) Xml

          3.讀取本地Xml(air)

          4.Xml寫到本地(air)

  代碼如下:

  

?

package {import flash.events.EventDispatcher;import flash.filesystem.File;import flash.filesystem.FileMode;import flash.filesystem.FileStream;import flash.system.System;import flash.xml.XMLDocument;import flash.xml.XMLNode;import mx.collections.ArrayCollection;import mx.rpc.xml.SimpleXMLDecoder;import mx.rpc.xml.SimpleXMLEncoder;import org.binyy.supermedia.app.utils.config.Config;/***Xml Manager * */public class XmlManager extends EventDispatcher{private static const XMLHEAD:String = '<?xml version="1.0" encoding="utf-8"?>';public function XmlManager(){throw new Error("Don't init static class");}/*** update xml data* @param data* @param path* */public static function updateXmlItem(data:ArrayCollection,path:String):void{var xml:XML = objectToXML(Util.sortItemIndex(data).source);writeXmlFile(xml,path);if(xml)System.disposeXML(xml);if(data)data = null;}/*** remove xml data* @param data* @param path* */public static function removeXmlItem(data:ArrayCollection,path:String):void{for(var i:int = data.length -1 ; i >= 0 ; i--){if(data.getItemAt(i).selected){data.removeItemAt(i);}}var xml:XML = objectToXML(Util.sortItemIndex(data).source);writeXmlFile(xml,path);if(xml)System.disposeXML(xml);if(data)data = null;}/*** Object to Xml* @param obj* * @return XML* */public static function objectToXML(obj:Object):XML { var xmlDocument:XMLDocument = new XMLDocument(); var xmlNode:XMLNode = (new SimpleXMLEncoder(xmlDocument)).encodeValue(obj, new QName("root"), xmlDocument); var xml:XML = new XML(xmlDocument.toString()); return xml; } /*** Xml to Object* @param xml* * @return Object* */public static function XMLToObject(xml:XML):Object{var xmlDocument:XMLDocument = new XMLDocument(xml);var resultObj:Object = (new SimpleXMLDecoder()).decodeXML(xmlDocument);return resultObj;}/*** read Local xml file* @param path* * @return XML* */public static function readXmlFile(path:String):XML{var file:File = File.applicationDirectory.resolvePath(path); // trace("read : " + file.nativePath);var fileStream:FileStream = new FileStream(); fileStream.open(file, FileMode.READ); var xml:XML = XML(fileStream.readUTFBytes(fileStream.bytesAvailable)); fileStream.close();return xml;}/*** write Local xml file* @param xml XML file* @param path* */public static function writeXmlFile(xml:XML,path:String):void{var file:File = new File(File.applicationDirectory.resolvePath(path).nativePath);// trace("write : " + file.nativePath);var fileStream:FileStream = new FileStream(); fileStream.open(file, FileMode.WRITE); var outputString:String = XMLHEAD; outputString += xml.toXMLString(); fileStream.writeUTFBytes(outputString); fileStream.close();}} }

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/loveFlex/archive/2012/07/13/2589664.html

總結(jié)

以上是生活随笔為你收集整理的Flex【原创】Xml与Object互转/读写本地Xml文件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。