作者kochli (自由自在)
看板Flash
标题Re: [心得] AIR 存TXT档,使用相对路径。
时间Sat May 24 22:55:09 2014
不好意思~请问这一套方法可以套用到制作android app吗?
有将下列程式码更改为如下:
import idv.cjcat.filesystem.CJFile;
import flash.filesystem.*;
//预设值
var file:File = new File("app:/1.txt");
T1.text = file.nativePath;
T2.text = "科科";
//浏览存档路径
Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT;
function B1Click(e:TouchEvent) {
file.browseForSave("存档路径");
}
B1.addEventListener(TouchEvent.TOUCH_TAP, B1Click);
//储存位置选择
function fileSelect(e:flash.events.Event)
{
T1.text = e.target.nativePath;
}
file.addEventListener(flash.events.Event.SELECT,fileSelect);
//储存档案
function B2Click(e:TouchEvent) {
saveTXT(T2.text,T1.text);
}
B2.addEventListener(TouchEvent.TOUCH_TAP, B2Click);
function saveTXT(str:String , path:String)
{
var file:File = new File(path);
file = new File(file.nativePath);
CJFile.saveTXT(str,file);
}
汇出成apk档安装在手机上後触控功能都正常
但就是找不到目标路径的txt档
是这个方法只能用在windows吗
烦请先进解惑
感谢~
※ 引述《etrexetrex (moonet)》之铭言:
: 原始档案 & 范例档案下载:
: 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);
: }
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 123.195.105.21
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/Flash/M.1400943312.A.C49.html
1F:→ mucoci:只会用shareobject存档...在android上正常... 05/25 12:01
2F:推 scars:记得android上只能用.url 不能用.nativePath 05/25 12:06
3F:→ scars:用new File(f.nativePath)来规避写入限制的撇步 只在win有效 05/25 12:07
4F:→ kochli:我试了.url还是无法存入txt档 05/25 12:35