加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex 读写xml文件的方法_Flex

发布时间:2020-12-15 03:54:19 所属栏目:百科 来源:网络整理
导读:Flex读XML的方法: 方法一: private function readXML1():void{var xmlFile:File = new File("file path");var stream:FileStream = new FileStream();stream.open(xmlFile,FileMode.READ);var xml:XML = XML(stream.readUTFBytes(stream.bytesAvailable));st


Flex读XML的方法:

方法一:

private function readXML1():void{
	var xmlFile:File = new File("file path");
	var stream:FileStream = new FileStream();
	stream.open(xmlFile,FileMode.READ);
	var xml:XML = XML(stream.readUTFBytes(stream.bytesAvailable));
	stream.close();
}

方法二:

private function readXML2():void{
	var urlRequest:URLRequest = new URLRequest("xml file path");
	var urlLoader:URLLoader = new URLLoader(urlRequest);
	urlLoader.addEventListener(Event.COMPLETE,completeHandler);
}

private function completeHandler(event:Event):void{
	var xml:XML = new XML(event.target.data);
	trace(xml);
}

Flex写XML的方法:

public static function writeXMLFile(xml:XML):void{
	var stream:FileStream = new FileStream();
	var xmlFile:File = new File("file path");
	var outputString:String = '<?xml version="1.0" encoding="utf-8"?>n';
	outputString += xml.toXMLString();
	outputString = outputString.replace(/n/g,File.lineEnding);
	stream = new FileStream();
	stream.open(xmlFile,FileMode.WRITE);
	stream.writeUTFBytes(outputString);
	stream.close();
}

补充:可以通过WebService,HttpService以及RemoteObject等方式调用Java或C#等完成文件的读写操作。

Flex端:

<mx:Script>
	javaService.getOutStream(xml);
</mx:Script>
	<mx:RemoteObject id="javaService" destination="fileOutput" showBusyCursor="true"
	result="Alert.show('设置成功,请刷新浏览器!')" fault="Alert.show('文件输出错误!')"/>


Java端:

package util;
	import java.io.BufferedWriter;
	import java.io.File;
	import java.io.FileOutputStream;
	import java.io.OutputStreamWriter;
	public class setView {
		public boolean getOutStream(String str) {
			try {
				File f = new File("webapps/test/xml/example.xml");
				FileOutputStream fos = new FileOutputStream(f,false);
				OutputStreamWriter osw = new OutputStreamWriter(fos,"UTF-8");
				BufferedWriter bw = new BufferedWriter(osw);
				bw.write(str);
				bw.close();
				osw.close();
				fos.close();
				return true;
			} catch (Exception e) {
				e.printStackTrace();
				return false;
			}
		}
	}


config.xml添加配置

<destination id="fileOutput" channels="my-amf">
	<properties>
	<source>util.setView</source>
	</properties>
	</destination>
	#Flex

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读