2009-05-26 68 views
0
// This is AS2 Coding 

this.createEmptyMovieClip("some_mc", 1); 
some_mc.loadVariables("external.txt"); 
some_mc.onEnterFrame = function() { 
    if (this.done == "yes") { 
     // the variables have finished loading 
     trace("**\nfinished loading\n**\nthe variables are:"); 
     trace(this.fName); // outputs nuno 
     trace(this.lName); // outputs mira 
     trace(this.age); // outputs 24 
     // delete the method to end the loop 
     delete this.onEnterFrame; 
    } else { 
     // not loaded yet 
     trace("**\nstill loading\n**"); 
    } 
}; 

//I want AS3 Coding 

//in the text file external.txt data: 

&fName=nuno& 
&lName=mira& 
&age=24& 

回答

0

那么这个问题的机会是多少?https://stackoverflow.com/questions/909409/how-to-read-text-file-external-txt-in-as3也是由您提交的? 双待和配置文件,偷偷摸摸的...... 你应该关闭其中之一。

在任何情况下,你有没有确切的最佳实践,也不该代码是在文本文件中的格式。 我会建议使用xml代替,但在另一个问题,你似乎坚持使用近标准文本格式(通常它会是fName = nuno & lName = mira & age = 24)。

总之,要做到这一点,首先需要在文本加载与URLLoader,例子应该给你所有你需要的。

然后,你需要分析文本,我建议Regex,例子应该给你你最需要什么。您应该能够使用/&(。+)=(。+)&/g(在捕获子字符串时检查this)解析它,其中第一个子字符串是名称,第二个字符串是值。

然后,你可以终于运行你最终的阵列,并将所有内容放入Dictionary,这样你就可以按名称访问这些值。

0
Simply you have to use URLLoader,URLRequest & URLVariables class in as3, see my example code in below. 

    private var _vars:URLVariables; 
    private Var _urlloader:URLLoader = new URLLoader(new URLRequest("external.txt")); 
    _urlloader.addEventListener(Event.COMPLETE, onURLLoaderCompleteHandler); 
    private function onURLLoaderCompleteHandler(e:Event):void 
    { 
     var loader:URLLoader = URLLoader(e.target); 
    _vars = new URLVariables(loader.data); 
     some_mc.addEventListener(Event.ENTER_FRAME, onFrameRunning); 
    } 

    private function onFrameRunning(e:Event):void 
    { 
     if(_vars != null) 
     { 
      trace("fname :"_vars.fname); 
      trace("lname :"_vars.lname); 
      trace("age :"_vars.age); 
     } 
    } 

//in the text file external.txt data: 
fname=nuno&lname=mira&age=24