我想使用Java读取文件夹中的文件。不幸的是,有时文件丢失了,我得到了NPE。
public static HashMap<String, Integer> getCPUTemp() throws IOException
{
File directory = new File("/sys/devices/virtual/thermal");
if (directory.exists())
{
HashMap<String, Integer> usageData = new HashMap<>();
File[] fList = directory.listFiles();
for (File file : fList)
{
if (file.isDirectory() && file.getName().startsWith("thermal_zone"))
{
......................
}
}
return usageData;
}
return null;
如果文件不存在,如何防止此情况并返回null
?你能告诉我一个Java 8的解决方案吗?
答案 0 :(得分:1)
我在这里得到NPE(文件文件:fList)
应该是fList
为空。
因此,在创建fList
之后,请检查null。
File[] fList = directory.listFiles();
if (fList == null) {
return null;
}