在制作桌面应用程序时,有时需要保存文件。我正在使用FileReference,但它会打开一个对话框,询问保存文件的位置,而不是自动保存在具有特定文件名的特定目录中。
我无法让FileStream正常工作。我在一个小例子中重现了这个
package {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import flash.net.*;
import flash.utils.ByteArray;
import flash.filesystem.*;
public class example extends MovieClip
{
public function example()
{
stage.addEventListener(MouseEvent.CLICK, mouseclick);
}
public function mouseclick(event:Event):void
{
var file:File = File.documentsDirectory.resolvePath("myfile.txt");
var stream:FileStream = new FileStream();
stream.open(file, FileMode.WRITE);
stream.writeUTFBytes("text");
stream.close();
}
}
}
鼠标点击事件可能是必要的 - 无论如何都是使用FileReference。 我正在使用flex编译器amxmlc
进行编译amxmlc -static-link-runtine-shared-libraries example.as
我尝试直接从Flash播放器运行,并创建一个独立的可执行文件,并通过Flash播放器和浏览器运行它。我在Windows文档目录中看不到新文件 - 如何更改?
答案 0 :(得分:0)
首先,您不需要与File
类进行“用户互动”,因为FileReference
确实需要这样做。
您必须使用AIR SDK将代码编译为AIR应用程序,然后将其安装在您的计算机上。您的SWF
文件无法直接使用。
有关编译应用的详细信息,请参阅这些资源: