在想法10.5中定义属性文件后,当我尝试使用它时,编译器显示Null指针异常!我尝试任何我认为在更改属性文件路径中修复它的东西,... 这是我写的代码: 谢谢。 初学者程序员!!!
public class MainDlg{
Properties properties=new Properties();
public MainDlg() {
try {
InputStream reader=MainDlg.class.getResourceAsStream("propFile");
properties.load(reader);
答案 0 :(得分:1)
听起来reader
为空。确保路径正确。
如果属性文件是根,那么你应该
InputStream reader=MainDlg.class.getResourceAsStream("/propFile");
答案 1 :(得分:0)
getResourceAsStream将返回null。您是否肯定,相对于MainDlg.class文件的位置,有一个名为presentation的文件夹,其中有一个名为propFile的文件?
答案 2 :(得分:0)
getResourceAsStream是case sensitive
。确保您的文件名完全匹配。
答案 3 :(得分:0)
可能你的资源(prop文件)没有放入classes目录。在任何情况下,这里都是一个提示;)在阅读该属性之前,打印以下内容:
new java.util.File(".").getAbsolutePath()
这应该可以让您了解当前的实际目录 希望这能解决您的问题。祝你好运!
答案 4 :(得分:0)
你把propFile
放在哪里了?它应该驻留在Source
根目录中,但是IDEA不会默认将其复制到类路径,因为Settings
|中的空扩展没有模式。 Compiler
| Resource Patterns
。
建议您将文件重命名为something.properties
,以便IDEA将其复制到输出(类路径),它将作为类路径资源提供。
如果您不想重命名文件,请将其放在源根目录之外的某个目录中,并将此目录配置为IDEA Project Structure
|中的库依赖项。 Modules
| Dependencies
,这样它就可以从classpath中获得。