I need some help in picking the exact file from directory on Windows using Java. Below is the code which I have written for this. But when I pass my input as "XYZ" file it always picks the "ABC" file only.
My input to pick the file was 'XYZ', but output always returns 'ABC' file
directoryPath = new File(System.getProperty("user.dir") + "\\TestFilesDirectory\\");
String contents[] = directoryPath.list();
            System.out.println("List of files and directories in the specified directory : " + directoryPath);
            for (int i = 0; i < contents.length; i++) {
                // System.out.println(contents[i]);
                ArrayList<String> fileNameList = new ArrayList<String>();
                String[] fileNameSplit = contents[i].split("_");
                for (int k = 0; k < fileNameSplit.length; k++) {
                    // System.out.println(fileNameSplit[k].toUpperCase());
                    fileNameList.add(fileNameSplit[k].toUpperCase());
                }
                if (fileNameList.contains("ABC") {
                    System.out.println("Pick ABC file from directory ");
                    source = new File(directoryPath + "\\" + contents[i] + "");
                    }
                    System.out.println("Base File: " + source);
                else  if (fileNameList.contains("DEF") {
                System.out.println("Pick DEF file from directory ");
                    source = new File(directoryPath + "\\" + contents[i] + "");
                }
                else if (fileNameList.contains("XYZ") {
                System.out.println("Pick XYZ file from directory ");
                    source = new File(directoryPath + "\\" + contents[i] + "");
                }
Below are my files in Test directory:
