File Input Output Java

import java.io.File;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Utils {
  private static List getFilesRecurse(File dir, Pattern pattern, File exclude, boolean rec,
      List fileList) {
    for (File file : dir.listFiles()) {
      if (file.equals(exclude)) {
        continue;
      }
      if (file.isDirectory() && rec) {
        getFilesRecurse(file, pattern, exclude, rec, fileList);
      } else {
        Matcher m = pattern.matcher(file.getName());
        if (m.matches()) {
          fileList.add(file);
        }
      }
    }
    return fileList;
  }
}