2013-04-20 102 views
3

我在Java性能有点小问题,也许你能帮助我。NullPointerException异常使用properties.load时()

在下面的代码我写我的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。根据Properties的文档,这通常意味着fis将是空的,这显然不是。

我已经尝试过了load()和存储()方法(无XML)和刚刚获得同样的错误。当我尝试通过fis手动读取文件时,它工作正常。

谢谢你的帮助!

+1

什么是'全球'?可能'全球'是空的。 – johnchen902 2013-04-20 13:08:25

+0

并且异常的堆栈跟踪是? – 2013-04-20 13:10:07

+0

检查并查看:'if(fis!= null && global!= null)'! – NINCOMPOOP 2013-04-20 13:10:48

回答

0

忘了初始化全局。对于愚蠢的问题抱歉。