vendredi 15 mai 2015

Mit Scanner aus einer txt Datei lesen und jede Person mit name, vorname, geburtsdatum speichern

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 :

Java Code:

  1. public static Person createPerson(Scanner dataSource) {
  2. dataSource.useDelimiter("Vorname:\\*s,Nachname:\\*s,Geburtsjahr:\\*i");
  3. String Vorname = dataSource.next();
  4. String Nachname = dataSource.next();
  5. int Geburtsjahr = dataSource.nextInt();
  6. Person p = new Person(Vorname, Nachname, Geburtsjahr);
  7. return p;
  8. }
  9.  
  10. public static PersonSet getPersonsFrom(Scanner dataSource) {
  11. PersonSet z = new PersonSet();
  12. while (dataSource.hasNext()){
  13. createPerson(dataSource);
  14. z.add(createPerson(dataSource));
  15. }
  16. return z;
  17. }

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)


Mit Scanner aus einer txt Datei lesen und jede Person mit name, vorname, geburtsdatum speichern

0 commentaires:

Enregistrer un commentaire