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