Flash Actionscript 3在本地保存XML文件有一个“另存为”窗口(如何删除它?)

时间:2011-09-11 16:32:34

标签: xml flash actionscript-3 actionscript

所以,我有一个Flash应用程序,可以处理公司的几个客户端配置文件。每当创建新的客户端配置文件时,它都会保存一个新的XML文件。我的问题是,不是进行“静默”文件创建,而是弹出一个窗口,就像执行“另存为”一样,以确认文件正在保存在磁盘上以及应该是哪个名称。

有没有办法在闪存中执行文件保存而不调用该窗口?如果是这样,是否可以将我链接到它的一个例子?

以下是我的代码示例:

var xmltosave:XML = new XML ( "<?xml version=&quot1.0&quot encoding=&quotutf-8&quot?><cliente><id>"+idfield.text+"</id><nome>"+nomefield.text+"</nome><tipo>"+tipofield.text+"</tipo><empresa></empresa><email>"+emailfield.text+"</email><contacto>"+contacto1field.text+"</contacto><contacto2>"+contacto2field.text+"</contacto2><profissao></profissao><datainscricao>"+datafield.text+"</datainscricao><dataalteracao></dataalteracao><notas></notas><notas2></notas2><notas3></notas3></cliente>");

var file:FileReference = new FileReference;
var filepath:String = new String(idfield.text + ".xml");
file.save( xmltosave, filepath );

另外,我知道xmltosave很长,是否可以在AS3代码中进行换行?

谢谢。 马可罗伯托。

注意:我知道我应该使用php脚本来管理文件,但除非php能够在没有任何服务器安装的情况下在本地运行,比如XAMPP,我对使用它不感兴趣。这是一个小项目,我只需要处理XML文件。除非没有PHP脚本绝对不可能,否则我更喜欢AS3解决方案。

1 个答案:

答案 0 :(得分:1)

由于您正在构建桌面应用程序,因此可以使用flash.filesystem.File(AIR SDK中的一部分)将文件另存为后台进程。