[心得] AIR 存TXT檔,使用相對路徑。

看板Flash作者 (moonet)時間16年前 (2008/09/30 11:27), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/3 (看更多)
原始檔案 & 範例檔案下載: http://et284vu065k3.googlepages.com/AIRSaveFlie.rar 此範例使用了 CJ 的 API ( CJFile ) 在這裡謝謝 CJ 教我如何安裝AIR環境,以及如何使用 CJFile 這個範例包含了:  1.基本事件處理  2.File類別使用  3.破解 AIR 在使用相對路徑時無法寫入檔案的方法 1.基本事件處理  就是按鈕按下時要作什麼事那些 ex: //瀏覽存檔路徑 function B1Click(e:MouseEvent) { file.browseForSave("存檔路徑"); } B1.addEventListener(MouseEvent.CLICK, B1Click); 2.File類別使用  file.browseForSave 這個函數... 當你選擇完存檔路徑並按下儲存時會用到事件處理 ex: //儲存位置選擇 function fileSelect(e:flash.events.Event){ T1.text = e.target.nativePath; } file.addEventListener(flash.events.Event.SELECT,fileSelect);  3.破解 AIR 在使用相對路徑時無法寫入檔案的方法 如果你想取得相對路徑你必須寫: var file:File = new File("app:/1.txt"); 但從 app:/ 路徑產生的 File 物件是不支援寫入的 而從絕對路徑產生的 File 物件可以支援寫入,因此 我們可以利用 app:/ 取得相對路徑的絕對路徑 再利用絕對路徑建立一個新的 File 物件 ex: var file:File = new File("app:/1.txt"); file = new File(file.nativePath); == 最後附上完整程式碼 (給不想下載檔案的人看的) == import idv.cjcat.filesystem.CJFile; import flash.filesystem.*; //預設值 var file:File = new File("app:/1.txt"); T1.text = file.nativePath; T2.text = "科科"; //瀏覽存檔路徑 function B1Click(e:MouseEvent) { file.browseForSave("存檔路徑"); } B1.addEventListener(MouseEvent.CLICK, B1Click); //儲存位置選擇 function fileSelect(e:flash.events.Event) { T1.text = e.target.nativePath; } file.addEventListener(flash.events.Event.SELECT,fileSelect); //儲存檔案 function B2Click(e:MouseEvent) { saveTXT(T2.text,T1.text); } B2.addEventListener(MouseEvent.CLICK, B2Click); function saveTXT(str:String , path:String) { var file:File = new File(path); CJFile.saveTXT(str,file); } -- blog:http://etrex.blogspot.com/ site:http://web.ntust.edu.tw/~B9409041/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.120.112.29

09/30 14:06, , 1F
good job!!原來applicationPath可以轉nativePath呀...
09/30 14:06, 1F

07/10 11:47, , 2F
下載原檔後發佈,會出現找不到SWF存檔路徑,請問如何使用
07/10 11:47, 2F
文章代碼(AID): #18uPoLXI (Flash)
文章代碼(AID): #18uPoLXI (Flash)