作者etrexetrex (moonet)
看板Flash
标题[心得] AIR 存TXT档,使用相对路径。
时间Tue Sep 30 11:27:15 2008
原始档案 & 范例档案下载:
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
1F:推 cjcat2266:good job!!原来applicationPath可以转nativePath呀... 09/30 14:06
2F:→ kuochun:下载原档後发布,会出现找不到SWF存档路径,请问如何使用 07/10 11:47