2011-07-28 21 views
1

新しいフォルダを作成し、そこにデータを保存する必要があります。コードは以下の通りである:playbook:新しいフォルダを作成してデータを保存する

 var list:Array=reader.getEntries(); 
     for(var i:uint=0;i < list.length;i++) 
     { 
      var bytes:ByteArray=reader.unzip(list[i]); 

      var fileStream:FileStream=new FileStream(); 
      fileStream.open(dir.resolvePath(list[i].getFilename()),FileMode.WRITE); 
      fileStream.writeBytes(bytes,0,bytes.length);  
     } 
     fileStream.close(); 

次のコードは、ディレクトリdir作成するためのものです:

dir=File.applicationStorageDirectory.resolvePath(dirname); 
      dir.createDirectory(); 

をしかし、私はこのコードを実行するたびに、私はこの

エラー#3001を取得しています:ファイルまたはディレクトリへのアクセスが拒否されました。

私はblackberry_tablet.xml、すなわちaccess_sharedにreqd権限を与えました。

P.S.私はcoltware_airxzip.swfを使用して、配列リストに格納しているzipアーカイブからファイルを抽出します。

答えて

0

あなたはアクセス権をチェックしたと言いますが、私は再度チェックします。また、ファイルのディレクトリとファイル名の値を確認し、不正なファイル名の文字が含まれていないことを確認してください。たとえば、 ")%@ *)!〜-`.txt"のようなファイル名を指定するとエラーが発生する可能性があります。

また、ユーザーがアプリケーションのアクセス許可を無効にしていないことを確認します(開発中の問題ではない)。

for(var i:int;i < 5;i++) 
    { 
     var fileStream:FileStream = new FileStream(); 
     var file:File = File.applicationStorageDirectory.resolvePath("test_"+i+".txt"); 
     // if in directory attempt to create it first - something like this for the directory 
     // file = !file.exists ? file.createDirectory() : file; 
     fileStream.open(file, FileMode.WRITE); 
     fileStream.writeUTFBytes("test data"); 
     fileStream.close(); 
     // if space available is not 0 then that is good indication file was created or saved 
     // of course so is file.exists 
     trace("file exists = " +file.exists); 
     trace("Space available = " +file.spaceAvailable); 
    } 

は、それはあなたが単純なファイルのエントリを作成することができるかどうかのzipライブラリが参照される可能性を排除するために、私がいないエラーメッセージを除いて、今この同じ問題を持っています。これは、ファイルとディレクトリが作成されていると言うと、このようにネイティブパスを示していますよう

/accounts/1000/appdata/MyApplication.debug.testDev_Maker_debug533b7b57/data/MyApplication/file_1.txt 

とアプリのストレージ・パス:

app-storage:/MyApplication/file_1.txt 

しかし、私はどちらかAIRブラウザでファイルを見つけることができませんか、 RIMファイルマネージャ。だから私は問題が何であるかはわかりませんが、デバッグモードになっているのでそれを書いていないかもしれないと思います。私はそれがリリースされたら確認を提供することができます。

関連する問題