我是新手,所以如果这是一个愚蠢的问题,我很抱歉。但是,我需要你的帮助。我在ecplise中有以下目录:Directory Hierarchy 当然有一个包含所有这些文件的目录。
我试图使用get class.getResource来访问一个名为“data.txt”的文件:
scanObj = new Scanner(new File(this.getClass().getResource("resources/data.txt").toExternalForm()));
但我得到一个空指针异常为什么会这样? 非常感谢! 任何帮助将不胜感激
答案 0 :(得分:0)
的第一个打印值
this.getClass().getResource("resources/data.txt")
到控制台。如果它打印为null,那么这就是问题的原因。 如果您引用的文件不在类路径上,则通常会发生这种情况。 搜索有关如何在eclipse中将文件添加到类路径的帖子。
答案 1 :(得分:0)
因为查找是相对于应用程序的工作文件夹的。检查该文件夹是什么(应该在Eclipse中的类的运行配置中),并构建相对于该位置的路径。
或者,使用ClassLoader.getSystemClassLoader().getResourceAsStream("data.txt")
(这将为您InputStream
)