File dir = new File(dirName);
ArrayList<File> files = new ArrayList<File>();
dir.listFiles(new FileFilter()
{
@Override
public boolean accept(File file)
{
if (!file.isFile()){
return false;
}
String name = file.getName();
if (!StringUtils.startsWith(name, startsWith)){
return false;
}
if (!StringUtils.endsWith(name, ensWith)){
return false;
}
files.add(file);
s_logs.log(Level.INFO, "File that startswith " + startsWith + " found ");
return true;
}
});
此代码用于获取以字符开头的所有文件,但我想等到创建文件。 你能建议一个方法吗?
答案 0 :(得分:2)
您可以使用Java中新WatchService
包中提供的名为java.nio.file
的内容。
您可以使用此方法观察任何文件创建的目录。如果需要,您还可以递归检查目录。 Oracle还提供了一个可用于入门的代码示例。
您需要修改上述示例中的processEvents()
方法,并检查child
对象是否以您要查找的字符开头。
希望这有助于您开始使用!