String splitten aber nicht alles speichern.Danach in HashSet/Map schreiben.

Philipp1904

Mitglied
Hallo Leute ,

ich habe eine Aufgabe bekommen in der ich mithilfe von Collections etwas sortieren soll und nur Unikate speichern soll.

So nun zu dem Teil den ich nicht verstehe.

Es steht in einer Datei (firewall.txt):

Quelladresse|Zieladresse|Port(diese Zeile steht nicht in der Txt sondern dient nur zur besseren lesbarkeit.)
134.60.67.66 134.60.66.6:33
134.60.67.31 134.60.66.6:80
134.60.67.31 134.60.66.6:80
134.60.67.31 134.60.66.1:23

davon soll ich NUR! die IP in einem Hashset speichern und den Port wegfallen lassen.Ich habe aber echt keine Idee wie ich mithilfe von Split nur die IP speichere und den Port wegfallen lasse.

Danach soll ich alles nurnoch in dieser Form :

134.60.66.1
134.60.67.31
134.60.66.6
134.60.67.31
134.60.67.66

in eine Txt schreiben.

ich habe es probiert mit :
Java:
String x[]=csv.split(":??");
stimmt aber sicherlich nicht.

Ich freue mich über jede Hilfe , bin hier schon am verzweifeln!


Grüße.
 
Zuletzt bearbeitet:

eRaaaa

Top Contributor
Was ist jetzt bei dir im Beispiel
Code:
csv
? Eine Zeile oder wie, also im Beispiel
z.B.
"134.60.67.66 134.60.66.6:33" ?
Java:
		String[] split = "134.60.67.66 134.60.66.6:33".split("[ :]");
		System.out.println(Arrays.toString(split));

-> [134.60.67.66, 134.60.66.6, 33] , d.h. du hast im Array an [0] = die erste IP, in [1] = die zweite und in [2] = den Port.
 

Philipp1904

Mitglied
Ja genau , ich bekomme EINE Zeile übergeben in der z.b. 134.60.67.66 134.60.66.6:33 steht.

Nun muss ich irgendwie den Port abschneiden.
Und das ganze Ergebnis in eine HashSet schreiben.
 

eRaaaa

Top Contributor
Ja, siehe meine obige Antwort :)
Was ist jetzt genau das Problem? Nimm halt IP 1 und 2 und adde die demHashset, den Port (Array[2]) brauchst du ja nicht weiter beachten!
 

Philipp1904

Mitglied
Aja , du hast recht :)!

Danke für die Hilfe.Nun ist die Frage ob :

Java:
Collection<String> test = new HashSet<String>();

das dafür richtig vorhergesehene HashSet ist....
 

timbeau

Gesperrter Benutzer
HashSet beinhaltet halt jede IP nur einmal. Wenn das ok für dich ist, warum nicht?!

Ansonsten nimm eine Liste und adde die einzelnen IPs
 

eRaaaa

Top Contributor
Scheint den Anforderungen zu entsprechen. Wenn aber eh sortiert werdne soll(so verstehe ich den erstnen Post) wäre evtl. auch ein TreeSet denkbar :D
 

Neue Themen


Oben