【问题标题】:Flash 10: How to stream data to a local file?Flash 10:如何将数据流式传输到本地文件?
【发布时间】:2009-06-01 12:50:36
【问题描述】:
我需要 Adobe AIR 中的 FileStream 类,但需要在 Flash Player 中工作。
我知道有FileReference#save(),但它只能一次保存整个文件,如果要保存的数据大小大于可用内存,则不起作用...
是否真的不可能将数据流式传输到本地文件以避免将整个数据保留在内存中?
或者也许可以在不先将整个文件读入内存的情况下将数据附加到本地文件?
我非常需要这个!
谢谢!
【问题讨论】:
标签:
flash
actionscript-3
flash-10
【解决方案1】:
你运气不好。安全限制不允许这种情况发生在 AIR 应用程序的上下文之外。
【解决方案2】:
如果你有一个服务器要访问,你可以通过将数据传递给服务器来完成。
使用 FileReference.save() 并点击服务器上的某个 URL。然后,开始将要保存的数据流式传输到服务器,然后让服务器将其重定向到 Flash 客户端。您需要在服务器上编写一些自定义的处理方式,而且速度不会像在本地保存那样快,但这可能是您能够做到这一点的唯一方法。