2016-06-30 4 views
1
public void loadFileRecursiv(String pathDir) 
{ 
    File fisier = new File(pathDir); 
    File[] listaFisiere = fisier.listFiles(); 

    for(int i = 0; i < listaFisiere.length; i++) 
    { 
     if(listaFisiere[i].isDirectory()) 
     { 
      loadFileRecursiv(pathDir + File.separatorChar + listaFisiere[i].getName()); 
     } 
     else 
     { 
      String cuExtensie = listaFisiere[i].getName(); 
      String nume = cuExtensie.split(".")[0]; 
      String acronimBanca = nume.split("_")[0]; 
      String tipAct = nume.split("_")[1]; 
      String dataActString = nume.split("_")[2]; 
      //Date dataAct = new SimpleDateFormat("dd-MM-yyyy").parse(dataActString); 
      //String denBanca = inlocuireAcronim(acronimBanca); 

      insertData(listaFisiere[i], cuExtensie, acronimBanca, tipAct, dataActString); 

      //fisiere[i].renameTo(new File("u02/ActeConstitutive/Mutate")); 
     } 
    } 

} 

У меня есть простой код, который проверяет все файлы и папки в соответствии с указанием пути. К сожалению, у меня есть NULLPOINTEREXCEPTION для for(int i = 0; i < listaFisiere.length; i++) этой строки. В чем проблема? Спасибо!NullPointerException для справки

ответ

1
  1. проверка ли listaFisiere является недействительным или не
  2. Если не равно нулю, измените эту строку как for(int i = 0; i < listaFisiere.length(); i++)

и

вы можете изменить свой код, как показано ниже

for(File path:listaFisiere) 
{ 
    if(path.isDirectory()) 
    { 
     loadFileRecursiv(pathDir + File.separatorChar + path.getName()); 
    } 
    else 
    { 
     String cuExtensie = path.getName(); 
     String nume = cuExtensie.split(".")[0]; 
     String acronimBanca = nume.split("_")[0]; 
     String tipAct = nume.split("_")[1]; 
     String dataActString = nume.split("_")[2]; 
     //Date dataAct = new SimpleDateFormat("dd-MM-yyyy").parse(dataActString); 
     //String denBanca = inlocuireAcronim(acronimBanca); 

     insertData(path, cuExtensie, acronimBanca, tipAct, dataActString); 

     //fisiere[i].renameTo(new File("u02/ActeConstitutive/Mutate")); 
    } 
} 
Смежные вопросы