Hi,
ich habe vor kurzem angefangen ein bisschen Java zu lernen und verstehe gerade nicht wie das gehen soll :
In einer txt Datei sind Personen zeilenweise gespeichert in der Reihenfolge : Vorname: Name: Geburtsjahr:
Ich soll nun mit einem Scanner von der Datei lesen und alle Personen in einem PersonSet speichern.
Mein Ansatz wäre so :
aber das macht es leider nicht (z ist vom Typ PersonSet)
Eine andere Idee von mir wäre mit einer For Schleife über alle Zeilen zu iterieren und jede Person hinzuzufügen, aber ich weiß leider nicht wie man das Ende des Scanner definieren/eingeben soll.
Hoffe ihr könnt mir Ratschläge geben.
(Wir müssen es mit Scanner machen und können nicht bspw den Bufferreader benutzen)
ich habe vor kurzem angefangen ein bisschen Java zu lernen und verstehe gerade nicht wie das gehen soll :
In einer txt Datei sind Personen zeilenweise gespeichert in der Reihenfolge : Vorname: Name: Geburtsjahr:
Ich soll nun mit einem Scanner von der Datei lesen und alle Personen in einem PersonSet speichern.
Mein Ansatz wäre so :
Java:
public static Person createPerson(Scanner dataSource) {
dataSource.useDelimiter("Vorname:\\*s,Nachname:\\*s,Geburtsjahr:\\*i");
String Vorname = dataSource.next();
String Nachname = dataSource.next();
int Geburtsjahr = dataSource.nextInt();
Person p = new Person(Vorname, Nachname, Geburtsjahr);
return p;
}
public static PersonSet getPersonsFrom(Scanner dataSource) {
PersonSet z = new PersonSet();
while (dataSource.hasNext()){
createPerson(dataSource);
z.add(createPerson(dataSource));
}
return z;
}
Eine andere Idee von mir wäre mit einer For Schleife über alle Zeilen zu iterieren und jede Person hinzuzufügen, aber ich weiß leider nicht wie man das Ende des Scanner definieren/eingeben soll.
Hoffe ihr könnt mir Ratschläge geben.
(Wir müssen es mit Scanner machen und können nicht bspw den Bufferreader benutzen)
Zuletzt bearbeitet von einem Moderator: