Hey Leute, ich will in meinem Spiel eine Art Highscoreliste erstellen, die in einer externen Textdatei gespeichert wird.
Hier mein bisheriger Quellcode:
Also erstmal wird ein integer Wert aus einer anderen Klasse übergeben. (Die erreichte Punktzahl)
Dann soll die Textdatei erstmal ausgelesen werden und in ein Array gepackt werden. Als Test hab ich erstmal das Array 6 Felder lang sein lassen, wobei jeder Wert erstmal 0 entspricht.
Das erste Problem ist, dass ich nicht weiß wo ich den BufferedReader schließen soll, da an jeder stelle eine Fehlermeldung kommt.
Eigentlich müsste ich vor dem "catch"
eintragen, aber das funktioniert so nicht ganz.
Danach lass ich in das 6. Feld des Arrays die erreichte Punktzahl schreiben.
Nun wird noch mein Sortieralghorithmus folgen, der die Werte der Reihe nach sortiert.
Als nächstes soll der BufferedWriter das Array der Reihe nach wieder in das Textdokument schreiben.
Mein Problem ist nun, dass eine relativ große Fehlermeldung kommt und ich nicht genau weiß, was ich machen soll.
Wäre toll wenn ihr mir helfen könntet.
Mfg
Hier mein bisheriger Quellcode:
Code:
public class Highscore {
private BufferedReader in;
private BufferedWriter out;
private StringTokenizer st;
int[] Werte = {0, 0, 0, 0, 0, 0};
public Highscore(int pu) {
//Textdatei + Punkte in Java einlesen
try {
BufferedReader in = new BufferedReader(new FileReader("src/Highscore.txt"));
String zeile = "";
for(int i=0; i!=5; i++){
Werte[i] = Integer.parseInt(zeile);
}
} catch (IOException e) {
Werte[5] = pu;
}
//Array + Punkte in Txt Datei einschreiben
try {
BufferedWriter out = new BufferedWriter(new FileWriter("src/Highscore.txt"));
for (int z = 0; z < Werte.length; z++) {
out.write(String.valueOf(pu));
out.write(' ');
}
out.close();
} catch (IOException e) {
}
}
}
Also erstmal wird ein integer Wert aus einer anderen Klasse übergeben. (Die erreichte Punktzahl)
Dann soll die Textdatei erstmal ausgelesen werden und in ein Array gepackt werden. Als Test hab ich erstmal das Array 6 Felder lang sein lassen, wobei jeder Wert erstmal 0 entspricht.
Das erste Problem ist, dass ich nicht weiß wo ich den BufferedReader schließen soll, da an jeder stelle eine Fehlermeldung kommt.
Eigentlich müsste ich vor dem "catch"
Code:
in.close();
Danach lass ich in das 6. Feld des Arrays die erreichte Punktzahl schreiben.
Nun wird noch mein Sortieralghorithmus folgen, der die Werte der Reihe nach sortiert.
Als nächstes soll der BufferedWriter das Array der Reihe nach wieder in das Textdokument schreiben.
Mein Problem ist nun, dass eine relativ große Fehlermeldung kommt und ich nicht genau weiß, was ich machen soll.
Wäre toll wenn ihr mir helfen könntet.
Mfg