Air copyTo复制文件错误SecurityError: fileWriteResource

SecurityError: fileWriteResource 此错误发生在: This error occured when i tried to write in a file which was in my applicationDirectory. (此错误发生在当在应用程序目录下写文件时)。

当在 applicationDirectory (应用程序)目录下进行 复制文件时就会出现:SecurityError: fileWriteResource 。

出现此错误的例子:

private function copyToDir():void{
    var sourceFile:File=File.applicationDirectory.resolvePath("images/img01.png");
    var destination:File=File.applicationDirectory.resolvePath("test.png");
    try {
      sourceFile.copyTo(destination,true);
    } catch(error:IOError) {
      trace("IOError:",error.errorID," ",error.message);
    }catch(e:Error){
      trace("Error:",error.message);    
    }

}

出现:SecurityError: fileWriteResource 错误

解决方法:

根据 目标目录的绝对地址创建一个绝对地址的 File 再进行复制操作。

例子:

private function copyToDir():void{
    var sourceFile:File=File.applicationDirectory.resolvePath("images/img01.png");
    var rootDir:File = File.applicationDirectory;
    var destination:File=new File(rootDir.nativePath+"/test.png");

   if(sourceFile.exists){
        trace("sourceFile存在:",sourceFile.nativePath);
   }
   try {
         sourceFile.copyTo(destination,true);
   } catch(error:IOError) {
         trace("IOError:",error.errorID," ",error.message);
    } catch(e:Error){
           trace("Error:",e.message);   
   }

}

结果 :成功.

----------------------------------------------------------------------------------------------------------------------------------

另外写文件的例子:

var applicationDirectoryPath:File = File.applicationDirectory;
var nativePathToApplicationDirectory:String = applicationDirectoryPath.nativePath.toString();
nativePathToApplicationDirectory+= "/my-config.mxml";
var file:File = new File(nativePathToApplicationDirectory);

var filestream:FileStream = new FileStream();
filestream.open(file, FileMode.WRITE);
filestream.writeUTFBytes("My Text");
filestream.close();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值