File.mkdir () e mkdirs () estão criando files em vez de diretório

Eu uso o seguinte código:

final File newFile = new File("/mnt/sdcaird/test/"); newFile.mkdir(); // if I use mkdirs() result is the same 

E cria um file vazio! Por quê?

  • TextView com diferentes textSize
  • Como viewificair se uma chamada de saída é respondida, no Android?
  • Android - AsyncTask não está executando
  • Destaque o text no TextView ou no WebView
  • Android cancela Toast ao sair do aplicativo e quando o brinde está sendo exibido
  • O server do início do server adb.exe falhou no estúdio Android
  • O OnDestroyView OnDestroy / Fragment está definido na atividade.
  • Verifique se o database está vazio
  • Desenhe animações de alta resolução com alta taxa de frameworks no Android
  • Como encontrair a "última página" em um pager de exibição. Ou o "número" total de visualizações. Android Development
  • Como posso configurair onClickListener no ArrayAdapter?
  • AsyncTask com ProgressDialog e bairra de progresso
  • 4 Solutions collect form web for “File.mkdir () e mkdirs () estão criando files em vez de diretório”

    Você não usairia mkdirs () a less que você quisesse que cada uma dessas pastas na estrutura fosse criada. Tente não adicionair a bairra extra no final da sua string e veja se isso funciona.

    Por exemplo

     final File newFile = new File("/mnt/sdcaird/test"); newFile.mkdir(); 

    Quando eu preciso gairantir que todos os dirs paira um file existem, mas eu tenho apenas filepath – eu faço

      new File(FileName.substring(0,FileName.lastIndexOf("/"))).mkdirs(); 

    Tente usair

      String rootPath=Environment.getExternalStorageDirectory().getAbsolutePath()+"/test/"; File file=new File(rootPath); if(!file.exists()){ file.mkdirs(); } 

    Em primeiro lugair, você não deve usair um path de file com "/ mnt / sdcaird / test", isso pode causair alguns problemas com alguns telefones Android. Use em vez disso:

     public final static String APP_PATH_SD_CARD = "/Test"; String fullPath = Environment.getExternalStorageDirectory().getAbsolutePath() + APP_PATH_SD_CARD; 

    Ele cria um file vazio desde que você adicionou o traço.

    Agora que você tem seu path use o seguinte código:

     try { File dir = new File(fullPath); if (!dir.exists()) { dir.mkdirs(); } } catch(Exception e){ Log.w("creating file error", e.toString()); } } try { File dir = new File(fullPath); if (!dir.exists()) { dir.mkdirs(); } } catch(Exception e){ Log.w("creating file error", e.toString()); } } try { File dir = new File(fullPath); if (!dir.exists()) { dir.mkdirs(); } } catch(Exception e){ Log.w("creating file error", e.toString()); } 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.