2010-04-07 43 views
0

我的Flex客户端应用程序从后端(RemoteObjects,BlazeDS,Spring)获取了一些数据。客户已经获得了所需的所有数据,现在需要将某些信息以CSV格式提供并下载。Flex 3文件下载 - 无URLRequest

为此使用Flex 3。有任何想法吗?

感谢, 斯里兰卡

回答

3

如果要编译为Flash Player 10,那么你可以调用FileReference.save()功能保存到本地文件系统:

http://help.adobe.com/en_US/FlashPlatform//reference/actionscript/3/flash/net/FileReference.html#save()

只要确保你把这个节的注意事项:

在Flash Player中,只能成功调用此方法以响应用户事件(例如,在鼠标单击或按键事件的事件处理程序中)。否则,调用此方法会导致Flash Player抛出Error异常。此限制不适用于应用程序沙箱中的AIR内容。

如果无法编译为Flash Player 10,唯一的另一种方法是将数据发送到服务器,并让用户将其从CSV下载到服务器。

您可以在simlar方式与FileReference.download()这样做是为了save()http://help.adobe.com/en_US/FlashPlatform//reference/actionscript/3/flash/net/FileReference.html#download()

+0

感谢您的回答.. – Sri 2010-04-07 15:09:50

0

可惜你不能做到这一点。您必须使用FileReference + URLRequest,您无法即时创建可在Flash Player中下载的文件。 一种解决方法是在文本文件中显示数据并允许用户进行复制/粘贴。当然,只有你有少量的信息时,它才有效。

+0

其实自Flash Player 10,您可以在客户端上创建文件。 – 2010-04-08 15:30:27