0

SDカードに「BEAM」というフォルダを作成したいのですが、フォルダが作成できないと表示されます。

私はこのコードを使用しました:

    File mediaDir = new File("/sdcard/beam");
        / / Create a folder if not exists
        if (!mediaDir.exists()) {
            mediaDir.mkdir(); // this code return false
        }

フォルダ「ビーム」は保護されていますか?

私はまた、このAndroidの許可を持っています:

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

5 に答える 5

0

常に同じ場所にあるとは限りません。使用してみてください

Environment.getExternalStorageState() は、「/mnt/sdcard」のような内部 SD マウント ポイントへのパスを返します。

たとえば、私の電話の場所は /storage/sdcard0/ になります

お役に立てれば

于 2013-03-15T11:12:55.563 に答える
0

以下のコードを参照してください

 if (android.os.Environment.getExternalStorageState().equals(
                 android.os.Environment.MEDIA_MOUNTED)) {

                 File f = new File(
                         Environment.getExternalStorageDirectory() + File.separator + "beam");
                 f.mkdirs();
} 
于 2013-03-15T11:14:03.387 に答える
0

あなたのコードは正しいです。/ビームの後の単語が欠けているだけです。それを追加して、次のコードのように再試行してください。

File mediaDir = new File("/sdcard/beam/");  // / is added after beam
// Create a folder if not exists
if (!mediaDir.exists()) 
{
     mediaDir.mkdir(); // this code return false
}
于 2013-03-15T11:26:40.350 に答える
0

以下のコードを試してください。「sdcard」「mnt/sdcard」などのハードコア文字列は使用しないでください

File f = new File(android.os.Environment.getExternalStorageDirectory(),File.separator+"beam/");
f.mkdirs();
于 2013-03-15T11:12:18.770 に答える
0

「adb shell」を使用してから「mkdir /sdcard/beam」を使用してフォルダーを作成しようとしましたか? それはうまくいくはずです。そうでない場合は、何が問題なのかを理解する必要があります。また、sdcard フォルダーをハードコーディングしないでください。見る:

/sdcard にディレクトリを作成できない

Android mkdirがフォルダーを作成していません

于 2013-03-15T11:15:03.780 に答える