2014-03-12 107 views
1

我正在使用Netbeans在Java中編寫遊戲。將項目保存到XML文件

我希望能夠在每輪開始時將遊戲保存到XML文件,並且能夠在遊戲開始時加載任何已保存的遊戲。

XML文件最終應包含遊戲保存時的當前狀態(玩家,姓名,金額等)。

我通過互聯網閱讀並瞭解到我需要使用DOM創建遊戲中所有類的內容樹,然後使用JAXB將樹打包成XML文件。

我不知道從哪裏開始,如何創建上下文樹,等等。

任何幫助或良好的教程將是有益的(找不到任何好東西)。

+0

我不知道這是否就像「得到的一切,我們必須在內存和序列化」,然後「把一切都回來給我,所以我可以踢它開始「。 :-)可能你必須爲你的遊戲創建一些包含代表你的遊戲「狀態」並堅持它的所有數據的對象。一些對象不能被序列化(例如流) – Leo

回答

0

JAXB使您能夠輕鬆地將Java對象的實例轉換爲XML。使用JAXB,您將永遠不需要直接與DOM進行交互。

JAXBContext jc = JAXBContext.newInstance(Game.class); 

File file = new File("gameData.xml"); 

Unmarshaller unmarshaller = jc.createUnmarshaller(); 
Game game = (Game) unmarshaller.unmarshal(file); 

Marshaller marshaller = jc.createMarshaller(); 
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true); 
marshaller.marshal(game, file); 

JAXB是例外,這意味着你只需要在那裏你婉XML表示從默認的不同來註釋車型配置。下面將幫助您開始:

相關問題