久久―日本道色综合久久,亚洲欧美精品在线,狼狼色丁香久久婷婷综合五月,香蕉人人超,日本网站黄,国产在线观看不卡免费高清,无遮挡的毛片免费

2023信創(chuàng)獨角獸企業(yè)100強
全世界各行各業(yè)聯(lián)合起來,internet一定要實現(xiàn)!

Flash MX本地保存數(shù)據(jù)的三種方法

2004-02-12 eNet&Ciweek

  談到計算機操作,往往就不了數(shù)據(jù)操作,最基本的數(shù)據(jù)操作就是讀取和保存數(shù)據(jù)。Flash程序很多時候也會用到數(shù)據(jù)操作,比如說載入外部文件就是讀取數(shù)據(jù)。然而Flash保存數(shù)據(jù)的能力是很有限的。Flash 5時我們還可以用fscommond來本地保存外部文本文件,到了FlashMX時代,出于對安全因素的考慮,Micromedia取消了這個功能。

  那是不是我們就無法用Flash MX保存數(shù)據(jù)了呢?回答是否定的,這里我就系統(tǒng)給大家介紹用Flash MX本地保存外部數(shù)據(jù)的三種方法。

  方法一:使用MMsave函數(shù)

  說明:這是FlashMX專門用來專門用來存盤的函數(shù),出于對安全因素的考慮,Micromedia隱藏了它。這個函數(shù)還有另一種用法: MMSave(loadedMCName, saveMCName),其作用就是將載入的動畫另存到一個新文件中,這個功能可以用來將壓縮格式的swf轉(zhuǎn)化成未壓縮格式的swf,大家不防試一試。對于Windows98(me)用戶來說,默認(rèn)的存儲路徑是:Application Data\Macromedia\Flash MX\Configuration;對于Windows2000(xp)用戶來說,默認(rèn)的存儲路徑是:Documents and Settings\[User]\Application Data\Macromedia\Flash MX\Configuration。

  用法:MMSave(textString, txtFileName)

  參數(shù):textString  字符串,用來記錄要保存的數(shù)據(jù)內(nèi)容
     txtFileName 要保存的文本文件名

  示例:在場景中建立一個動態(tài)文本(變量名為name)并設(shè)置一個按鈕(實例名為send_btn)。然后在第一幀加入下面的代碼。


  


  


  


  
send_btn.onRelease = function() {
MMSave(name, "../../../../../../data.txt");
};

  按“Ctrl+Enter”測試一下,看是否能將輸入的用戶名保存在C盤的data.txt中。

  點評:這個函數(shù)只能用在編輯器的調(diào)試播放下,在IE或者播放器中就不能用了。

  方法二:使用SharedObject對象

  對象說明:SharedObject(共享對象)可以看作是小型的數(shù)據(jù)庫,我們可以用它來存儲任何Flash支持的數(shù)據(jù)類型,比如數(shù)字、字符串、數(shù)組和對象等等。SharedObject按存放位置可分為本地型(存在客戶端)和遠程型(存在服務(wù)器端)。本地型共享對象的擴展名為.sol。對于Windows98(me)用戶來說,默認(rèn)的存儲路徑是:Application Data\Macromedia\Flash Player\服務(wù)器域名路徑\Flash電影文件名.swf;對于Windows2000(xp)用戶來說,默認(rèn)的存儲路徑是:Documents and Settings\[User]\Application Data\Macromedia\Flash Player\服務(wù)器域名路徑\Flash電影文件名.swf。

  用法:下面是關(guān)于本地型共享對象的部分最主要的方法、屬性的介紹。

  1)getLocal(name) 方法  “name”參數(shù)共享對象名,返回共享對象的參照
  2)flush      方法  立即將數(shù)據(jù)寫入共享對象
  3)data      屬性  存取共享對象數(shù)據(jù)的通道

  你只需要掌握以上這些知識就可以用共享對象來存取外部數(shù)據(jù)了。

  示例:按方法一設(shè)置場景,然后輸入下面的代碼。


  


  


  


  
var user_so = sharedobject.getlocal("user"); // 建立共享對象的參照
send_btn.onRelease = function() {
with (user_so) {
data.name = name; //用data屬性和flush方法保存用戶輸入的用戶名     
flush();
}
};



  


  動作說明:
在這里我們首先一個,然后。

  點評:本地型共享對象只能將數(shù)據(jù)保存在默認(rèn)路徑下,而且擴展名只能是.sol。這種方法的作用與設(shè)置cookies的作用類似。


  方法三:結(jié)合JavaScript

  還是在Flash 5時,ActionScript就可以與JavaScript相互通信了。那又該怎樣使用JavaScript本地保存Flash MX的數(shù)據(jù)呢?首先我們得用fscommond命令將Flash MX獲得的數(shù)據(jù)傳遞到JavaScript中。

  步驟1:按方法一設(shè)置場景,然后在按鈕上加入下面代碼。


  


  


  


  
on (release) {
fscommand("send_var", name); //fscommand參數(shù)為name變量

  步驟2:以Flash5的格式發(fā)布Flash電影和html文件,然后打開html文件,在與之間加入如下代碼:


  


  


  


  


  <script language=JavaScript>

</script>

  <script LANGUAGE=JavaScript>

</script>

  你不必知道這些JavaScript和VbScript語句的具體含義,只要明白我們已經(jīng)將name變量的值傳遞給了args就行了。接下來我們還得將args的值寫入文本文件,最簡單的辦法就是使用FileSystemObject(文件系統(tǒng)對象)。添加如上紅色部分的代碼。關(guān)于FileSystemObject的用法,請參考<<JScript 語言參考 >>。

  步驟3:運行html文件,輸入一個用戶名,點擊按鈕,用戶名就保存在C盤的testfile.txt中了。

  嚴(yán)格來說, 這應(yīng)該算是FlashMX借用Flash 5語句來實現(xiàn)本地保存數(shù)據(jù)的方法。

  至于選擇哪種方法,視具體情況而定。如果你是開發(fā)游戲,適宜用第一、二種方法;如果你不使用FlashMX的新增動作角本,可以試一試最后一種方法。


  
源文件


相關(guān)頻道: eNews

您對本文或本站有任何意見,請在下方提交,謝謝!

投稿信箱:tougao@enet16.com