2012-03-20 10 views
0

ディレクトリを作成しようとしていますが、作成が正常に行われたかどうかは確認されていますが、画面にテキストが表示されますが、何も表示されません。ディレクトリが作成されたかどうかを確認すると失敗しますか?

Javaコード:

public void createDirectory() { 
    try { 
     String strDirectory = "test"; 
     boolean success = (new File(strDirectory)).mkdir(); 
     if (success) { 
      Toast.makeText(getBaseContext(), "Directory "+strDirectory+" created", Toast.LENGTH_SHORT); 
     } else { 
      Toast.makeText(getApplicationContext(), "error occured", Toast.LENGTH_SHORT); 
     } 
    } catch (Exception e) { 
     Log.e("Error", "Error creating directory"); 
    } 
} 
+0

いいえトーストは、 "if"と "else"のどちらもしていないことを示しているようです...つまり、例外があり、Log.e(...)をしています。あなたはlogcatを投稿できますか? – mfrankli

答えて

2

Toast.makeText(getBaseContext(), "Directory "+strDirectory+" created", 
Toast.LENGTH_SHORT).show(); 
+0

ああ、愚かな間違い、私は本当にhavntがないことを実現しました。ショー() – Androelpha

0

はあなたのマニフェストに外部ストレージを書くの使用許可を追加しました.... Bothトーストの.show()終止符を打ちますか?

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

実際には、パス全体を修飾していないため、ディレクトリを作成しようとしている場所がわかりません。あなたは何をしようとしているのですか?このファイルには、すべてのアプリケーションが読み取り可能になることを

あなたがSDカードにそれを作成しようとしている場合は、これを行う、

File f = new File(Environment.getExternalStorageDirectory(), "myfile.txt"); 

http://developer.android.com/reference/android/os/Environment.html

ノート。

あなたがこれを行う、アプリへの専用のファイルを作成しようとしている場合、

OutputStream os = context.openFileOutput("myfile.txt"); 

http://developer.android.com/reference/android/content/Context.html

それが使用するとして、この方法は、小さなファイル用に予約されていることに注意してください内部ストレージは多くのデバイスで制限されています。

最後に、常にスタックトレースを出力し、10人のうち

Log.e("mytag", "some message", e); 

9回、これは問題に直接ご指します。

関連する問題