本人目前完成的代码如下:
| <?xml version="1.0" encoding="utf-8"?> <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" fontSize="15" height="280" width="750"> <fx:Script> <![CDATA[ import flash.events.Event; import flash.events.FileListEvent; import flash.events.IOErrorEvent; import flash.filesystem.File; import flash.filesystem.FileMode; import flash.filesystem.FileStream; import flash.net.URLLoader; import flash.net.URLRequest; import flashx.textLayout.tlf_internal; import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.rpc.events.ResultEvent; private function XmlFileSel(titleStr:String):void{ var fileToOpen:File = File.documentsDirectory; selectTextFile(fileToOpen); function selectTextFile(root:File):void{ var xmlFilter:FileFilter = new FileFilter("*.xml","*.xml"); root.browseForOpen("", [xmlFilter]); root.addEventListener(Event.SELECT, fileSelected); } } private function fileSelected(e:Event):void { URLID.text = File(e.target).nativePath; var myXML:XML = new XML(); var XML_URL:String = (URLID.text.toString()); var myXMLURL:URLRequest = new URLRequest(XML_URL); var myLoader:URLLoader = new URLLoader(myXMLURL); myLoader.addEventListener("complete", xmlLoaded); var filename:String=(name.toString()); trace(filename); function xmlLoaded(event:Event):void { myXML = XML(myLoader.data); var str1:String =(myXML.toString()); var myXML1:RegExp=/MessageList/g; var str2:String=str1.replace(myXML1, "List"); var myXML2:RegExp=/Ms**/g; var str3:String=str2.replace(myXML2,"Code"); var myXML3:RegExp=/MsgKbn/g; var str4:String=str3.replace(myXML3,"Type"); var myXML4:RegExp=/Message/g; var str5:String=str4.replace(myXML4,"Msg"); var myXML5:RegExp=/Detail/g; var str6:String=str5.replace(myXML5,"Dtl"); var myXML6:RegExp=/DetailOpend/g; var str7:String=str6.replace(myXML6,"DtlOpend"); var myXML7:RegExp=/BtnPtn/g; var newXML:String=str7.replace(myXML7,"Btn"); trace(newXML); } } private function XmlFlieSave(titleStr:String):void{ var file:File = new File(); file.browseForSave(titleStr); //browse file.addEventListener(Event.SELECT, selSave); } private function selSave(e:Event):void{ var newFile:File = e.target as File; var str:String = ""; if(!newFile.exists){ var stream:FileStream = new FileStream(); stream.open(newFile, FileMode.WRITE); stream.writeUTFBytes(str); stream.close(); } } ]]> </fx:Script> <mx:Label text="XML文件选择" x="33" y="58" width="140"/> <mx:Button id="butFileID" y="88" label="选择文件" click="XmlFileSel('');" x="544"/> <mx:TextInput id="URLID" y="87" width="480" x="33"/> <mx:Button id="butSaveID" y="88" label="输出" click="XmlFlieSave('');" x="663"/> </s:WindowedApplication> |
这篇文章书写于(www.ccflash.com)详细参考以上网站.
本文到目前为止有0条评论