2012-05-09 11 views
1

私はバイナリコードをajaxで取得しています。その後、javascriptはアンドロイドでjavaに渡し、アンドロイドはバイナリコードを取得していますが、保存できません。私は多くの異なる方法を試みましたが、何も機能しません。javaバイナリコードをファイルに保存する

のJavaのコードは、これまでに次のようになります。

public void setFile(String sFileName, String sBody){ 
    try 
    { 
     //Log.w("setfile", sBody); 
     File root = new File(Environment.getExternalStorageDirectory(), local_address); 
     if (!root.exists()) { 
      root.mkdirs(); 
     } 
     File gpxfile = new File(root, sFileName); 
     FileOutputStream aFileOutStream = new FileOutputStream(gpxfile); 
     DataOutputStream aDataOutputStream = new DataOutputStream(aFileOutStream); 


     aDataOutputStream.writeUTF(sBody); 
     aDataOutputStream.flush(); 
     aDataOutputStream.close(); 
     aFileOutStream.close(); 

     //FileWriter writer = new FileWriter(gpxfile); 
     //writer.append(sBody); 
     //writer.flush(); 
     //writer.close(); 
     //Toast.makeText(this, "Saved", Toast.LENGTH_SHORT).show(); 
    } 
    catch(IOException e) 
    { 
     e.printStackTrace(); 
    } 
    } 

私は、Javaが動作している知っている私は、この行のコメントを外している場合ので

//Log.w("setfile」、sBody)。

ログの猫にはJavaScriptを使用して、SDカードに保存する権限を設定しているJavaの

+0

あなたのローカルファイルには全く何も得ていますか?特定のエラーメッセージ? – ametren

+0

'log cat' not 'low cat' x) – sschrass

+0

いいえ、ファイルは空ですokb – user1342645

答えて

0

私はあなたがそれはあなたにあなたのエンコーディングを変更しないように、代わりにwriteUTF()writeBytes()を使用したいと考えています。

+0

それはやっていない – user1342645

0

これは私の作品:

public void WriteSettings(Context context, String data){ 
    FileOutputStream fOut = null; 
    OutputStreamWriter osw = null; 

    try{ 
     fOut = openFileOutput("settings.dat", MODE_PRIVATE);  
     osw = new OutputStreamWriter(fOut); 

     osw.write(data); 
     osw.flush(); 

     Toast.makeText(context, "Settings saved", Toast.LENGTH_SHORT).show(); 
    } 

     catch (Exception e) {  
     e.printStackTrace(); 
     Toast.makeText(context, "Settings not saved", Toast.LENGTH_SHORT).show(); 
     } 

     finally { 
     try { 
      osw.close(); 
      fOut.close(); 
     } catch (IOException e) { 
       e.printStackTrace(); 
      } 
     } 
} 
関連する問題