Hallo,
Ich komme bei dieser Aufgabe einfach nicht weiter.. Die Datei die bearbeitet werden soll habe ich unten angehangen. Ich denke das Problem sind die vielen verschiedenen Trennzeichen ...
Die Aufgabe lautet, schreiben sie eine Klasse "Stadt" mit zwei Attributen für den Namen der Stadt und eine LinkedList für die Postleitzahlen für diese Stadt.
Schreiben sie eine weitere Klasse welche aus der .txt Datei für jede Stadt die Postleitzahlen ermittelt und ein Stadt Objekt erzeugt. Dieses Objekt wird wieder in eine LinkedList gespeichert. Anschließend sollen die Städte mit den jeweiligen Postleitzahlen ausgegeben werden.
Ich habs jetzt mehrere Stunden probiert und glaube auch nicht dass ich allein weiterkomme ...
edit : hier mal ein ausschnitt aus der txt, falls es jemand nicht herunterladen möchte
32545, 32547, 32549-Bad Oeynhausen
32105, 32107, 32108-Bad Salzuflen
50126, 50127, 50129-Bergheim
51427, 51429, 51465, 51467, 51469-Bergisch Gladbach
33615, 33617, 33619, 33647, 33649, 33659, 33689, 33699, 33719, 33729, 33739, 33602, 33604, 33605, 33607, 33609, 33611, 33613, 33519-Bielefeld
46395, 46397, 46399-Bocholt
44787, 44789, 44791, 44793, 44795, 44797, 44799, 44801, 44803, 44805, 44807, 44809, 44866, 44867, 44869, 44879, 44892, 44894-Bochum
53113, 53115, 53117, 53119, 53121, 53123, 53125, 53127, 53129, 53173, 53175, 53177, 53179, 53225, 53227, 53229, 53111-Bonn
46242, 46244, 46236, 46238, 46240-Bottrop
44575, 44577, 44579, 44581-Castrop-Rauxel
32760, 32756, 32758-Detmold
46535, 46537, 46539-Dinslaken
Ich komme bei dieser Aufgabe einfach nicht weiter.. Die Datei die bearbeitet werden soll habe ich unten angehangen. Ich denke das Problem sind die vielen verschiedenen Trennzeichen ...
Die Aufgabe lautet, schreiben sie eine Klasse "Stadt" mit zwei Attributen für den Namen der Stadt und eine LinkedList für die Postleitzahlen für diese Stadt.
Schreiben sie eine weitere Klasse welche aus der .txt Datei für jede Stadt die Postleitzahlen ermittelt und ein Stadt Objekt erzeugt. Dieses Objekt wird wieder in eine LinkedList gespeichert. Anschließend sollen die Städte mit den jeweiligen Postleitzahlen ausgegeben werden.
Ich habs jetzt mehrere Stunden probiert und glaube auch nicht dass ich allein weiterkomme ...
Java:
package a12;
import java.util.LinkedList;
public class Stadt{
private String name;
private LinkedList<Integer> blist = new LinkedList<Integer>();
public Stadt(String name,LinkedList<Integer> blist){
setName(name);
setBlist(blist);
}
public void setName(String name){
this.name=name;
}
public String getName(){
return name;
}
public void setBlist(LinkedList<Integer> blist){
this.blist=blist;
}
public LinkedList<Integer> getBlist(){
return blist;
}
}
Java:
package a12;
import java.io.*;
import java.util.LinkedList;
import java.util.Scanner;
public class StadtApp {
public static void main(String[] args) {
try {
BufferedReader br = new BufferedReader(new FileReader("C:/Users/AID/Desktop/Postleitzahlen.txt"));
LinkedList<Integer> plz = new LinkedList<Integer>();
LinkedList<Stadt> sta = new LinkedList<Stadt>();
String l = null;
String[] l2 = null;
Scanner sc = new Scanner(br);
while(sc.hasNext()){
if(sc.next().contains(",")&&sc.next().contains(" ")){
plz.add(Integer.parseInt(sc.next().substring(0, sc.next().length()-1)));
}
else if(sc.next().contains("-")){
l2 = sc.next().split("-");
plz.add(Integer.parseInt(l2[0]));
l = l2[1];
}
Stadt neu = new Stadt(l,plz);
}
br.close();
sc.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
edit : hier mal ein ausschnitt aus der txt, falls es jemand nicht herunterladen möchte
32545, 32547, 32549-Bad Oeynhausen
32105, 32107, 32108-Bad Salzuflen
50126, 50127, 50129-Bergheim
51427, 51429, 51465, 51467, 51469-Bergisch Gladbach
33615, 33617, 33619, 33647, 33649, 33659, 33689, 33699, 33719, 33729, 33739, 33602, 33604, 33605, 33607, 33609, 33611, 33613, 33519-Bielefeld
46395, 46397, 46399-Bocholt
44787, 44789, 44791, 44793, 44795, 44797, 44799, 44801, 44803, 44805, 44807, 44809, 44866, 44867, 44869, 44879, 44892, 44894-Bochum
53113, 53115, 53117, 53119, 53121, 53123, 53125, 53127, 53129, 53173, 53175, 53177, 53179, 53225, 53227, 53229, 53111-Bonn
46242, 46244, 46236, 46238, 46240-Bottrop
44575, 44577, 44579, 44581-Castrop-Rauxel
32760, 32756, 32758-Detmold
46535, 46537, 46539-Dinslaken