Я пытаюсь создать значение типа int, которое увеличивается счетчиком каждую секунду, затем, когда вы закрываете программу, оно сохраняет значение в файл .txt, а затем ДОЛЖНО, когда выснова запустите программу, прочитайте значение int из файла и снова продолжите с этого значения, однако, оно сохраняет правильно, создает файл, но когда я снова запускаю программу, она просто снова начинается с 1, ине со значением, которое было сохранено в файле .txt.
Значение int:
public int points;
Метод получения и установки, расположенный в MrStan.class
public int getPoints(){
return points;
}
public void setPoints( int points ){
this.points = points;
}
Как я читаю файл:
MrStanReadFile r = new MrStanReadFile();
r.openFile();
r.readFile();
r.closeFile();
Мой класс ReadFile:
public class MrStanReadFile {
private Scanner x;
MrStan a = new MrStan();
public void openFile(){
try{
x = new Scanner(new File("D:/MrStan/text.txt"));
}catch(Exception ex){
System.out.println("COULD NOT FIND TEXT.TXT");
}
}
public void readFile(){
while(x.hasNext()){
String p = x.next();
int pointset = Integer.parseInt(p);
a.setPoints(pointset);
}
}
public void closeFile(){
x.close();
}
}
Другие места, где используется int:
Todotask:
public MrStan(){
timer.schedule(new todoTask(), 0, 1 * 1000);
}
class todoTask extends TimerTask{
public void run(){
points++;
repaint();
}
}
private Timer timer = new Timer();
и
g.drawString("Points: " + points, 75, 83);
Хорошо, в методе readFile вы увидите строку p, это строка в текстовом файле.Я преобразую строку в int, используя Integer.parseInt (), затем устанавливаю в качестве значения int значение преобразованного набора точек, но оно не меняется, как будет работать моя программа, чтобы она запускалась с числа, указанного вфайл .txt?