Имам малък проблем със свойствата в 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. Според документацията на Properties това обикновено означава, че fis ще бъде null, което очевидно не е.
Вече опитах методите load() и store() (без XML) и получавам същата грешка. Когато се опитам да прочета файла ръчно чрез fis, той работи добре.
Благодаря ви за помощта!
global
? Вероятноglobal
е нула. - person johnchen902   schedule 20.04.2013if (fis != null && global!=null)
! - person AllTooSir   schedule 20.04.2013