我正在製作一個非常簡單的單詞鼴鼠遊戲,但是這個高分寫作問題正在讓我失望。所以下面的方法會告訴你當遊戲結束後你按下重新啓動時會發生什麼。通過幾次啓動將多個分數寫入數據文件
private static void HighScoreInput() throws IOException, ClassNotFoundException
{
FileOutputStream fos = new FileOutputStream(dataFile);
ObjectOutputStream saveItem = new ObjectOutputStream(fos);
player[intplayernum] = new HighScore(userName, timePlayed, totalwords, timecount.getText());
saveItem.writeObject(player[intplayernum].toString());
System.out.println(player[intplayernum].toString());
System.out.println("Player score written to file.");
saveItem.close();
GameFrame.setVisible(false);
GameFrame.dispose();
askNameApp();
intplayernum++;
}
但每一次發生這種情況時,或者當用戶重新啓動,它應該加上以前的數據,所以我們有多個得分高分文件。相反,這隻會保留文件上的最後一個輸入播放器對象。我需要知道如何繼續添加,而不是替換名稱。
保存分數時,您將創建一個新文件並將該分數寫入該文件。由於您不會寫任何其他內容,這就是文件中的全部內容。如果要保留以前的內容,請使用FileWriter和append選項,或者繼續使用FileOutputStream,但在寫入最新分數之前先寫入文件的以前內容。 –
謝謝克里斯。我有點不滿意你的意思,但你能告訴我如何做到這一點的代碼 – user3444412
看到我的代碼,你需要修改的答案 –