Estoy tratando de encontrar un archivo en un directorio raíz y sus subdirectorios.Búsqueda de archivos recursivamente
Paso1- Busque un directorio en una ruta especificada. Paso 2: si se encuentra el directorio anterior, busque un archivo en uno de sus subdirectorios.
Para esto, uso el siguiente fragmento de código que busca de forma recursiva. Ahora, el problema aquí es, ¿cómo puedo salir de la recursividad cuando cumple con mis dos requisitos anteriores?
boolean bFileFound = false;
File fileFound = null;
private void findFile(File aFile, String sDir){
String filePath = aFile.getAbsolutePath();
if(aFile.isFile() && filePath.contains(sDir)){
if(aFile.getName().contains("test2.adv")){
Log.d(TAG, "[FILE] " + aFile.getName());
fileFound = aFile;
bFileFound = true;
}
// return true;
}else if(aFile.isDirectory()){
String sDirName = aFile.getName();
Log.d(TAG, "[DIR] " + sDirName);
if(sDirName.contains(sDir)){
Log.d(TAG, "Found the directory..& Absolute Path = " + aFile.getAbsolutePath());
sDir = sDirName;
}
File[] listFiles = aFile.listFiles();
if(listFiles != null){
for(int i = 0; i < listFiles.length; i++){
if(bFileFound)
return;
findFile(listFiles[ i ], sDir);
}
}else{
Log.d(TAG, " [ACCESS DENIED]");
}
}
// return null;
}
Gracias, DK
Gracias Sincolas .. es impresionante ... – codersnet