上一节中,我们讲到了加载文件,用Loader这个类我们可以加载swf以及图形文件,如果我们要加载txt文件或者xml文件,那么我们就要用到URLLoader,其实使用的方法和Loader类没有太大的区别. 我们还是建立一个FLA文件,顺便在同一目录下建一个TXT文件,取名叫cfg.txt,在里面打上一点内容,比如hello!,再来建一个文档类MainForm: package net.smilecn.studyURLLoader{ import flash.display.Sprite; import flash.net.URLLoader; import flash.net.URLRequest; import flash.events.Event; public class MainForm extends Sprite{ public function MainForm():void{ var loader:URLLoader = new URLLoader(); loader.load(new URLRequest("cfg.txt")); loader.addEventListener(Event.COMPLETE,loadCompleteHandler); } private function loadCompleteHandler(event:Event):void{ trace(event.currentTarget.data); } } } 我们可以看到,写法和上节并无太大区别,在加载完成事件,我们trace了data属性,这个data实际上就是我们cfg.txt里面的文字:hello!. 我们有时可能会将txt文件里存一些变量当做简单的配置文件,我们将txt文件的内容改成:msg=hello!&ip=localhost,我们要将代码改一下: package net.smilecn.studyURLLoader{ import flash.display.Sprite; import flash.net.URLLoader; import flash.net.URLRequest; import flash.net.URLVariables; import flash.events.Event; public class MainForm extends Sprite{ public function MainForm():void{ var loader:URLLoader = new URLLoader(); loader.load(new URLRequest("cfg.txt")); loader.addEventListener(Event.COMPLETE,loadCompleteHandler); } private function loadCompleteHandler(event:Event):void{ var vars:URLVariables = new URLVariables(event.currentTarget.data); trace(vars.msg); trace(vars.ip); } } } 我们实际上是把从txt文件里的内容通过URLVariables转变成了URL变量的类型,这样我们就可以通过=前面的变量名来访问这个变量 我们也可以载入XML文件,先建一个cfg.xml的文件: <?xml version="1.0" encoding="UTF-8"?> <root> <msg>hello!</msg> <ip>localhost</ip> </root> 还是要修改一个MainForm代码: package net.smilecn.studyURLLoader{ import flash.display.Sprite; import flash.net.URLLoader; import flash.net.URLRequest; import flash.events.Event; public class MainForm extends Sprite{ public function MainForm():void{ var loader:URLLoader = new URLLoader(); loader.load(new URLRequest("cfg.xml")); loader.addEventListener(Event.COMPLETE,loadCompleteHandler); } |