【发布时间】:2011-07-08 17:15:48
【问题描述】:
我认为不是,但也许我错了。有人吗?
更新:
不是。
【问题讨论】:
标签: actionscript-3 file memory load filereference
我认为不是,但也许我错了。有人吗?
更新:
不是。
【问题讨论】:
标签: actionscript-3 file memory load filereference
我认为您可以,至少文档中没有其他说明。尝试在 FileReference 对象上添加ProgressEvent 以在调用load() 后读取它的data (ByteArray) 属性。
但是,如果您使用URLLoader 加载文件,则只有在加载操作完成后才会填充 URLLoader 的 data 属性。
[编辑]
因此,毕竟在加载时无法访问实时的 fileReference 数据。文档应明确说明这是不可能的,因为这是一个有效的请求。
然而,在浏览文档后我意识到您可以通过使用 URLStream 类来做到这一点,该类提供了在数据加载时读取数据的方法 - 它旨在完全满足您的需求。
在这种情况下,唯一的问题是 URLStream 需要完整的 URL 路径(URLRequest 对象),出于安全原因,FileReference 无法获得该路径 - 只能获取所选文件的名称,而不是完整路径.在 AIR 中获取本地文件路径非常容易,但是由于您希望您的应用程序能够抵抗浏览器,因此我不太确定如何从用户的计算机访问文件路径 - 除非他们输入文件路径,但要求您的用户这样做会严重降低用户体验。
【讨论】:
http://www.google.com 和 C:\Program Files\file.xml 都是 URL :) Loader 对象和 URLLoader 对象(以及 URLStream 对象等)都接收 URLRequests 作为参数,但请记住 URLLoader 主要用于加载数据(文本文件、XML 或在动态的、数据驱动的应用程序中使用的其他信息),而 Loader 主要用于加载显示对象(swf 文件或图像文件)。声音对象有自己的加载函数,它还接收本地或在线 .mp3 文件的 URLRequest 参数。
目前无法...
【讨论】: