0
"_done"で終わるディレクトリのファイルをフィルタリングする必要があります。
ディレクトリには3つの.txtファイル、 format1.txtすなわち、format2.txtと除外される必要があり format2_done.txtが含まれています。正規表現がファイル名の末尾に一致しない
System.out.println("all files: ");
String[] files = folder.list();
for (String item : files) {
System.out.println(item);
}
出力:
all files:
format1.txt
format2.txt
format2_done.txt
しかし、次のサンプル:
System.out.println("filtered: ");
String[] filteredFiles = folder.list((File folder, String name)
-> {return !(name.matches("_done.txt>"));});
for (String item : filteredFiles) {
System.out.println(item);
}
は、同じ出力を生成し、フィルタリングしない
は、次のサンプルは、正しく、すべてのファイルを一覧表示します何でも:
filtered:
format1.txt
format2.txt
format2_done.txt
私は間違っていますか?
それは働きました!もちろん、* endsWith *メソッドはかなり簡単ですが、私は自分のコードにもっと正規表現を取り込もうとしています。 – 0lt