如何“强行下载”完全在Flash中生成的文件?

时间:2009-06-02 19:55:30

标签: actionscript-3 browser flash

如果我在Flash Player中生成二进制文件,如何在不先将其发送到服务器的情况下弹出文件的“保存”对话框?

我确信我听说这是Flash 10中的一项新功能。

干杯,
詹姆斯

2 个答案:

答案 0 :(得分:1)

这将有所帮助,并且真正向您展示如何做到这一点,您必须记住的是,打开和保存文件只能通过用户启动来完成,它不能自动化,因此不确定您要尝试的是什么做,但这会有所帮助:

http://www.mikechambers.com/blog/2008/08/20/reading-and-writing-local-files-in-flash-player-10/

答案 1 :(得分:0)

如果您在Flash播放器中,则可以执行以下操作:

import flash.net.FileReference;
import flash.utils.ByteArray;

var fileReference:FileReference = new FileReference();

var data:ByteArray; // load up your data into this ByteArray

fileReference.save(data, "outputfile.dat");

如果你在浏览器中运行,这将无法工作 - 至少就我记得的那样,但如果你在flash播放器中,这将有效。

FileReference.save()方法将弹出一个对话框,供用户选择保存文件的位置,因此给出的文件名只是建议的文件名。

编辑:如果您遇到问题,请参阅下面的Technomaag评论