Java 文件对象具有空指针异常
我在这一行遇到了问题,特别是文件数组failuSarasas。它正在返回nullJava 文件对象具有空指针异常,java,pointers,exception,null,main,Java,Pointers,Exception,Null,Main,我在这一行遇到了问题,特别是文件数组failuSarasas。它正在返回null //obj.generateIndexes(failuSarasas, 2); HashMap<String, HashMap<String, Integer>> indTwoList = obj.generateIndexes(failuSarasas, 2); //对象生成索引(failusaras2); HashMap indTwoList=obj.generateIndexes(f
//obj.generateIndexes(failuSarasas, 2);
HashMap<String, HashMap<String, Integer>> indTwoList = obj.generateIndexes(failuSarasas, 2);
//对象生成索引(failusaras2);
HashMap indTwoList=obj.generateIndexes(failusarass,2);
内
公共类mainas
{
公共静态void main(字符串[]args)引发IOException
{
mainas obj=新的mainas();
文件[]failuSarasas=obj.getFileList();
//对象生成索引(failuSarasas,2);
HashMap indTwoList=obj.generateIndexes(failusarass,2);
对象printHashMap(indTwoList);
//对象生成索引矩阵(indTwoList,failuSarasas);
//更多代码。。。
}
公共文件[]getFileList()
{
文件夹=新文件(
“C:\\Users\\Dell Pc\\Desktop\\notify\\Informacijos modeliavimas\\Informacijos modeliavimas\\ld2\\pages”);
File[]listOfFiles=folder.listFiles();
返回文件列表;
}
//更多代码。。。
}
您的failuSarasas
对象为null,因为这段代码似乎返回null:
公共文件[]getFileList()
{
文件夹=新文件(
“C:\\Users\\Dell Pc\\Desktop\\notify\\Informacijos modeliavimas\\Informacijos modeliavimas\\ld2\\pages”);
File[]listOfFiles=folder.listFiles();
返回文件列表;
}
在对新的文件
对象执行任何操作之前,您可能需要检查文件是否存在。文件
类有一个exist()
方法,您可以使用它来完成这项工作。祝你好运
编辑:
根据Oracle文档
公共文件[]列表文件()
返回一个抽象路径名数组,表示此抽象路径名表示的目录中的文件
如果此抽象路径名不表示目录,则此方法返回null。否则将返回一个文件对象数组,每个文件或目录对应一个
看到第三段了吗?这就是为什么我怀疑您提供的路径不存在,这就是为什么我要说首先通过File\exists()
方法进行检查
以下是文件文档的链接:
另外,除非您需要使用
文件
,否则我建议您使用文件
以及该软件包中的那些项目(java.nio.File
) 您能详细说明您遇到了什么错误或意外结果,以及预期的输出吗?请了解modeliavimas2.mainas.generateIndexes(mainas.java:46)modeliavimas2.mainas.mainas(mainas.java:15)中线程“main”java.lang.NullPointerException中的异常。很抱歉,我是这方面的新手,为什么Failu Saras为空?如果他必须采取getFileList方法,请阅读我编辑的答案。这应该能回答你的问题。非常感谢你的精彩解释。问题是在设置目录时,字母C写得像大写字母一样;D“C:\\Users\\Dell Pc\\Desktop\\notify\\Informacijos modeliavimas\\Informacijos modeliavimas\\ld2\\pages”)
public class mainas
{
public static void main(String[] args) throws IOException
{
mainas obj = new mainas();
File[] failuSarasas = obj.getFileList();
//obj.generateIndexes(failuSarasas, 2);
HashMap<String, HashMap<String, Integer>> indTwoList = obj.generateIndexes(failuSarasas, 2);
obj.printHashMap(indTwoList);
//obj.generateIndexMatrix(indTwoList, failuSarasas);
// More code...
}
public File[] getFileList()
{
File folder = new File(
" C:\\Users\\Dell Pc\\Desktop\\inform\\Informacijos modeliavimas\\Informacijos modeliavimas\\ld2\\pages");
File[] listOfFiles = folder.listFiles();
return listOfFiles;
}
// More code...
}