我试图找到一个文件的最后修改版本,我有这个工作,但当我试图找到一个特定的文件,我得到一个 NULLPointerException
. 我的代码:
public static File getFile(String dir, String chat) {
File fl = new File(dir);
File[] files = fl.listFiles(new FileFilter() {
public boolean accept(File file) {
return file.isFile();
}
});
long lastMod = Long.MIN_VALUE;
File choice = null;
for (File file : files) {
if (file.lastModified() > lastMod && file.getName().contains(chat)) {
choice = file;
lastMod = file.lastModified();
}
}
return choice;
}
当您取出“&&file.getname().contains(chat)”时,代码就会工作。否则,它给了我nullpointerexception错误。
我知道像这样的东西可以工作,因为我让它工作,但需要从零开始用我的代码:(
2条答案
按热度按时间uoifb46i1#
这里是nullpointerexception的来源。
在这里调用它之前需要示例化-->choice=file;
8iwquhpp2#
以下是使用java.nio.file的版本:
如果使用java 8: