Hallo,
ich programmiere schon eine Weile an einem Siedler von Catan-Klon (2D) in Java. Nun habe ich folgendes Problem:
Ich habe einen Konverter eingebaut, der ältere Savegames erkennt und automatisch die nötigen Angaben dazuschreibt, damit das Programm die Saves lesen kann. Dazu habe ich eine Versionsangabe in die Savedatei geschrieben, die vom Konverter eingelesen werden soll, damit er weiß, was genau er noch dazu schreiben soll.
In der Datei sieht das Ganze so aus:
"Version: v0.5.1"
Hiermit versuche ich an die Versionsnummer zu kommen und diese abzugleichen, doch er überspringt beide If-Abfragen IMMER:
zeile[0] ist die erste eingelesene Zeile. Diese wird auch komplett richtig eingelesen (mit
überprüft).
Auch
entspricht "0.5.1" aber TROTZDEM sagt er, dass diese beiden Strings nicht identisch sind.
Weiß jemand wodran das liegt?
Danke schonmal im Vorraus
ich programmiere schon eine Weile an einem Siedler von Catan-Klon (2D) in Java. Nun habe ich folgendes Problem:
Ich habe einen Konverter eingebaut, der ältere Savegames erkennt und automatisch die nötigen Angaben dazuschreibt, damit das Programm die Saves lesen kann. Dazu habe ich eine Versionsangabe in die Savedatei geschrieben, die vom Konverter eingelesen werden soll, damit er weiß, was genau er noch dazu schreiben soll.
In der Datei sieht das Ganze so aus:
"Version: v0.5.1"
Hiermit versuche ich an die Versionsnummer zu kommen und diese abzugleichen, doch er überspringt beide If-Abfragen IMMER:
Code:
//Erkennen neuerer Versionen
if (zeile[0].split("v")[1].equals("0.5.1"))
saveVersion = V051;
if (zeile[0].split("v")[1].equals("0.5.2"))
saveVersion = V052;
zeile[0] ist die erste eingelesene Zeile. Diese wird auch komplett richtig eingelesen (mit
Code:
System.out.println()
Auch
Code:
zeile[0].split("v")[1]
Weiß jemand wodran das liegt?
Danke schonmal im Vorraus

Zuletzt bearbeitet: