public File moveFileToUploadLoc(final File dir) throws Exception {
File fileToMove = null;
if (dir != null) {
final File[] files = dir.listFiles();
for (int i = 0; files != null && i < files.length; i++) {
if (files[i].getName().endsWith("abcd")) {
fileToMove = files[i];
File destnFile = this.getFilePathFrmConfigRepo(this
.getFilePathKey());
fileToMove.renameTo(destinationFile);
break;
}
}
}
return fileToMove;
}
它表明了这一点 RV_RETURN_VALUE_IGNORED_BAD_PRACTICE
此方法返回未检查的值。应检查返回值,因为它可以指示异常或意外的函数执行。例如,如果无法成功删除文件(而不是抛出异常),则File.delete()方法返回false。如果不检查结果,则不会注意方法调用是否通过返回非典型返回值来表示意外行为。
答案 0 :(得分:1)
您正在使用File.renameTo()并且忽略了它的返回值。您应该检查它,如果它是错误的,您应该处理这种情况,例如,抛出异常。
答案 1 :(得分:1)
阅读(现在正确的)引用文本,您会看到解释清楚。对于每个返回值的函数,您应该以某种方式使用该函数。
他们的示例甚至特别指的是File
方法delete()
。在这种情况下,findbugs很可能是指您对File.renameTo()
的调用。
您应该检查此函数的返回值并相应地处理错误(false
)。