使用properties.load()时出现NullPointerException

时间:2013-04-20 13:03:58

标签: java properties nullpointerexception fileinputstream

我对Java中的属性有点问题,也许你可以帮助我。

在下面的代码中,我将我的Properties对象写入XML:

global.storeToXML(new FileOutputStream(propertiesPath + SEPERATOR + GLOBAL + FILEEXTENSION), "");

这样可以正常工作并生成以下文件:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>test</comment>
<entry key="port">5001</entry>
<entry key="maxPlayers">1</entry>
</properties>

但是如果我尝试使用以下代码加载此文件:

FileInputStream fis = new FileInputStream(propertiesPath + SEPERATOR + GLOBAL + FILEEXTENSION);

if (fis != null)
 global.loadFromXML(fis);

loadFromXML方法抛出NullPointerException。根据属性的文档,这通常意味着fis将为null,显然不是。

我已经尝试过load()和store()方法(没有XML)并得到同样的错误。当我尝试通过fis手动读取文件时,它可以正常工作。

谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

忘记初始化全局。抱歉这个愚蠢的问题。