私がやろうとしているのは、ディレクトリ内のファイルのリストから見て、どのファイル名が「出力」というパターンを持っているかを確認することです。ファイルに「出力」という単語が含まれている場合は、それを画面に出力したいだけです。それでおしまい。
これが機能しない私のコードです。うまくいかないのはなぜですか?
package duplicate_search;
import java.io.File;
import java.util.regex.*;
import java.util.Scanner;
public class Search {
public static void main(String [] args){
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter the directory to search: ");
String dir = keyboard.next();
Pattern p = Pattern.compile("output");
Matcher m = null;
System.out.println
("Now search for *." + p + " files.");
File folder = new File(dir);
File[] listOfFiles = folder.listFiles();
for(File f : listOfFiles){
m = p.matcher(f.getName());
if(m.matches()){
System.out.println(f.getName());
}
}
}
}