У меня есть файл и основной читатель и писатель настроить, но когда я изменить значение, которое он не запишет новое значение Вот код:Сохранение статистики с Java IO
INT constitutionLevel, strengthLevel;
int[] saveStats = { constitutionLevel, strengthLevel };
int constitutionLevelLocation = 0;
int strengthLevelLocation = 1;
public StatSaver()
{
constitutionLevel = Constitution.getConstitutionLevel();
strengthLevel = Strength.getStrengthLevel();
}
public void startSaving()
{
readPlayer("SaveManagement/Stats/save.txt");
updatePlayerStats();
savePlayer("SaveManagement/Stats/save.txt");
}
private void updatePlayerStats()
{
System.out.println("Saving Stats...");
System.out.println(constitutionLevel);
constitutionLevel = saveStats[constitutionLevelLocation];
strengthLevel = saveStats[strengthLevelLocation];
System.out.println(constitutionLevel);
System.out.println("Done Saving Stats");
}
private void readPlayer(String filePath)
{
File inputFile;
BufferedReader inputReader;
try
{
inputFile = new File(filePath);
inputReader = new BufferedReader(new FileReader(inputFile));
for (int i = 0; i < saveStats.length; i++)
{
saveStats[i] = Integer.parseInt(inputReader.readLine());
}
inputReader.close();
} catch (Exception e) { e.printStackTrace(); }
}
private void savePlayer(String filePath)
{
File outputFile;
BufferedWriter outputWriter;
try
{
outputFile = new File(filePath);
outputWriter = new BufferedWriter(new FileWriter(outputFile));
outputWriter.write(saveStats[0] + "\n");
outputWriter.write(saveStats[1] + "\n");
//for (int i = 0; i < saveStats.length; i++)
//{
// outputWriter.write(saveStats[i] + "\n");
//}
outputWriter.close();
} catch (Exception e) { e.printStackTrace(); }
}
Как вы можете видеть, у меня есть строка кода закомментирована но две строки кода прямо над делать то же самое, я должен только ввести несколько вещей, я мог бы изменить его на что-то большее, но так как У меня две статистики прямо сейчас, я не спешу. Единственным решением, которое является краткосрочным, было бы изменение значения в файле .txt, но это не сработало бы, если бы я публиковал игру, потому что все ставили стат на бесконечность. В любом случае, пожалуйста, помогите и заблаговременно!
'startSaving' не вызывается из этого кода. Вы уверены, что его зовут? – sherb
Я называю это, когда останавливаю и очищаю игру. – daniel