private List<File> collectFiles(File dir, String ext, List<File> files) { if(dir.exists() && dir.canRead()) { File[] lf = dir.listFiles(); if(lf == null) { lf = new File[0]; } for (File f : lf) { if (f.getName().endsWith(ext)) { files.add(f); } } } return files; }