2011-04-17 16 views

cevap

34

aşağıdaki kodu kullanabilirsiniz bir dizin oluşturmak için:

File dir = new File("path/to/your/directory"); 
try{ 
    if(dir.mkdir()) { 
    System.out.println("Directory created"); 
    } else { 
    System.out.println("Directory is not created"); 
    } 
}catch(Exception e){ 
    e.printStackTrace(); 
} 

boş bir dizin silmek için bu kodu kullanabilirsiniz: boş olmayan bir dizini silmek için

boolean success = (new File("your/directory/name")).delete(); 
if (!success) { 
    System.out.println("Deletion failed!"); 
} 

, sen Bu kodu kullanabilirsiniz:

public static boolean deleteDir(File dir) { 
    if (dir.isDirectory()) { 
     String[] children = dir.list(); 
     for (int i=0; i<children.length; i++) { 
      boolean success = deleteDir(new File(dir, children[i])); 
      if (!success) { 
       return false; 
      } 
     } 
    } 

    return dir.delete(); 
} 

Belki de bu izni gerekir:

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

Bu cevap da iyi bir kaynaktır:

How to create directory automatically on SD card

+0

, eğer yakalamada mkdir() yöntemini içermemelidir, çünkü eğer f daha eski var, yanlış döndü ve istisna atmadı –

19

, bir dizin oluşturmak için size

File myDirectory = new File(Environment.getExternalStorageDirectory(), "dirName"); 

if(!myDirectory.exists()) {         
    myDirectory.mkdirs(); 
} 

silmeyi kullanabilirsiniz,

myDirectory.delete(); 

permi eklemeyi unutma Üzerinde bir verici: Bu gibi benim proje için dizin ve alt dizin oluşturduk

uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" 
+2

Dizin varlığını kontrol etmeye gerek yok. 'mkdirs()', dizin oluşturulduysa, hata durumunda false veya dizin zaten mevcutsa true olarak geri döner. –

0

..

 File root = android.os.Environment.getExternalStorageDirectory(); 

     File dir = new File (root.getAbsolutePath() + "/MP3 Music/"); //it is my root directory 

     File favourite = new File (root.getAbsolutePath() + "/MP3 Music/" + "Favourites"); // it is my sub folder directory .. it can vary.. 

     try 
     { 
      if(dir.exists()==false) 
      { 
        dir.mkdirs(); 
      } 
      /* else 
      { 
       // Toast.makeText(MainActivity.this, "Root Directory is already exists", Toast.LENGTH_LONG).show(); 
      }*/ 

      if(favourite.exists()==false) 
      { 
       favourite.mkdirs(); 
      } 

     } 
     catch(Exception e){ 
      e.printStackTrace(); 

     } 
3
mkdir() for 

File directory = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/abcabcabc"); 
directory.mkdir(); 


mkdirs() for 
File directory = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/Mani/abcxyz"); 
    directory.mkdirs(); 
1
new File(Environment.getExternalStorageDirectory(), "DirName").mkdirs(); 
0

bunu

altında kök dizin ve alt klasör oluşturmak istiyorsanız
String root = Environment.getExternalStorageDirectory().toString(); 

File myDir = new File(root + "/rootfoldername"+"/your sub folder name"); 

File dir=new File(root + "/rootfoldername"+"/your sub folder name"); 

myDir.mkdirs(); 

dir.mkdirs(); 
İlgili konular