URLLoader类是一个比较高级的类,自身仅提供了三个方法:URLLoader()、close()和load()。其中,URLLoader()是构造函数,其余两个方法分别执行文件的打开和关闭。它们的具体用法为:
Ø URLLoader(request:URLRequest=null)创建URLLoader对象。需提供一个URLRequest对象作为参数。如果不提供参数,代码中应显式的调用load()方法。
Ø close():void关闭加载操作,并放弃加载的数据。代码中不能访问未完成加载的数据。
Ø load(request:URLRequest):void从指定的URL发送和加载数据。
下面的代码声明了一个URLLoader对象,并利用该URLLoader对象打开一个名为“sample.txt”的文本文件。该文件包含一段文本:“sampletextinatxtfile.”,以明文存在,。
var myld:URLLoader=new URLLoader();
myld.load(new URLRequest("sample.txt"));
myld.addEventListener(Event.COMPLETE,loadcomplete);
trace(myld.dataFormat);
trace(String(myld.data));
代码的运行输出为:
text
undefined
之所以不能得到文本的内容,是由于代码中忽视了加载的异步性。当程序执行文本的输出语句时,文本尚未加载完毕。虽然是本地的文件,但是文本的打开和加载还是落后于代码中毗邻的TRACE语句。而URLLoader对象在加载完成之前,其数据是不能被访问的。