web-dev-qa-db-ja.com

Android External Storage Directory?にフォルダを作成する方法?

Android外部ストレージディレクトリにフォルダーを作成できません。

マニフェストに許可を追加しましたが、

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

ここに私のコードがあります:

 String Path = Environment.getExternalStorageDirectory().getPath().toString()+ "/Shidhin/ShidhiImages";
  System.out.println("Path  : " +Path );
  File FPath = new File(Path);
  if (!FPath.exists()) {
        if (!FPath.mkdir()) {
            System.out.println("***Problem creating Image folder " +Path );
        }
  }
31
SHIDHIN.T.S

このようにします:

String folder_main = "NewFolder";

File f = new File(Environment.getExternalStorageDirectory(), folder_main);
if (!f.exists()) {
    f.mkdirs();
}

その中に別のフォルダーを作成したい場合:

File f1 = new File(Environment.getExternalStorageDirectory() + "/" + folder_main, "product1");
if (!f1.exists()) {
    f1.mkdirs();
}
68
Dhaval

mkdirmkdirsの違いは、mkdirは存在しない親ディレクトリを作成しないのに対し、mkdirsは作成しないため、Shidhinが作成しない場合存在する場合、mkdirは失敗します。また、mkdirおよびmkdirsは、ディレクトリが作成された場合にのみtrueを返します。ディレクトリが既に存在する場合、falseを返します

11
Blackbelt

Android External Storage Directory。にフォルダーを作成できます。

マニフェストに許可を追加しましたが、

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

ここに私のコードがあります:

_String folder_main = "Images";

File outerFolder = new File(Environment.getExternalStorageDirectory(), folder_main);

File inerDire = new File(outerFolder.getAbsoluteFile(), System.currentTimeMillis() + ".jpg");

if (!outerFolder.exists()) {

    outerFolder.mkdirs();

}
if (!outerFolder.exists()) {

    inerDire.createNewFile();

}
_
  • outerFolder.mkdirs(); //これによりフォルダが作成されます

  • inerDire.createNewFile(); //これによりファイルが作成されます(例:.jpg
    ファイル)

1
PRAMESH BHALALA

次のように外部ストレージにフォルダーまたはディレクトリを作成できます。

 String myfolder=Environment.getExternalStorageDirectory()+"/"+fname;
     File f=new File(myfolder);
     if(!f.exists())
     if(!f.mkdir()){
     Toast.makeText(this, myfolder+" can't be created.", Toast.LENGTH_SHORT).show();

    }
    else
     Toast.makeText(this, myfolder+" can be created.", Toast.LENGTH_SHORT).show();
}

内部メモリにディレクトリまたはフォルダを作成する場合は、次のようにします。

File folder = getFilesDir(); 
File f= new File(folder, "doc_download"); 
f.mkdir();

ただし、外部ストレージへの書き込み許可を与えていることを確認してください。また、外部ドライブがない場合は、デフォルトで内部親ディレクトリを選択することを忘れないでください。私はそれが動作することを確認しています...コードをお楽しみください

1
Pradeep Sheoran

追加してみてください

FPath.mkdirs(); ( http://developer.Android.com/reference/Java/io/File.html を参照)

そして、そのパスに必要に応じてファイルを保存するだけで、Android OSは必要なすべてのディレクトリを作成します。存在チェックを行う必要はなく、そのフラグを設定して保存します。参照: SDカードにディレクトリを自動的に作成する方法

0
Chris