关于文件上载和下载

FileReference 类允许您在客户端和服务器之间添加上载和下载文件的功能。您的用户可以在计算机和服务器之间上载或下载文件。将在一个对话框中(例如,Windows 操作系统中的"打开"对话框)提示用户选择要上载的文件或用于下载的位置。

您使用 ActionScript 创建的每个 FileReference 对象都引用用户硬盘上的一个文件。该对象的属性包含有关文件大小、类型、名称、创建日期和修改日期的信息。在 Macintosh 上,还有一个有关文件的创建者类型的属性。

可以通过两种方式创建 FileReference 类的实例。可以使用以下的 new 运算符:

import flash.net.FileReference;
var myFileReference:FileReference = new FileReference();

或者,可以调用 FileReferenceList.browse() 方法,该方法将在用户的系统中打开一个对话框,提示用户选择要上载的文件,如果用户成功选择了一个或多个文件,则将创建一个 FileReference 对象组成的数组。每个 FileReference 对象表示用户在对话框中选择的一个文件。在调用了 FileReference.browse() 方法或 FileReferenceList.browse() 方法,并且用户已从文件选取器中选择一个文件之前,或者已将 FileReference.download() 方法用于从文件选取器中选择文件之前,FileReference 对象的 FileReference 属性(例如 namesizemodificationDate)中不会包含任何数据。

注意

FileReference.browse() 允许用户选择一个文件。FileReferenceList.browse() 允许用户选择多个文件。

成功调用 browse() 方法之后,调用 FileReference.upload() 以便一次上载一个文件。

还可以为您的 Flash 应用程序添加下载功能。FileReference.download() 方法将提示最终用户输入硬盘上的一个位置,以保存来自服务器的文件。此方法还将启动从远程 URL 进行的下载。使用 download() 方法时,当调度了 onSelect 事件时将只能访问 FileReference.name 属性。在调度 onComplete 事件之前,其余属性均不可访问。

注意

当最终用户的计算机中出现对话框时,该对话框中显示的默认位置是最近浏览的文件夹(如果该位置可以确定)或桌面(如果最近浏览的文件夹无法确定)。FileReference 和 FileReferenceList API 不允许您设置默认的文件位置

有关 FileReference API 的功能和安全的信息,请参见关于 FileReference API 功能和安全。有关使用 FileReference API 的应用程序示例,请参见为应用程序添加文件上载功能。可在硬盘上的 Samples 文件夹中找到此示例的范例源文件 FileUpload.fla。

有关 FileReference API 的每个方法、属性和事件的信息,请参见"ActionScript 2.0 语言参考"中的 FileReference (flash.net.FileReference)FileReferenceList (flash.net.FileReferenceList)