public List<String> listFilesByName(String directory) {
List<String> files = new ArrayList<String>();
File file = new File(directory);
File[] childrenFiles = file.listFiles();
for (int i = 0; i < childrenFiles.length; i++) {
File childFile = childrenFiles[i];
if (childFile.isDirectory()) {
List<String> grandsons = listFilesByName(childFile.getPath());
for(int j=0; j<grandsons.size(); j++) {
files.add(grandsons.get(j));
}
} else if(childFile.isFile()){
files.add(childFile.getPath());
}
}
return files;
}