gesamte Hashmap mit Zeilenumbrüchen in einem String

Jatoll

Bekanntes Mitglied
Hallo, ist es möglich eine Hashmap komplett in einen String zu packen (aber nur die Werte, nicht die Keys) und trotzdem Zeilenumbrüche nach jedem Eintrag zu haben? ... reguläre Ausdrücke sollen dabei auch beachtet werden...
also kurz gesagt ich will die hashmap über netzwerk also einen socket streamwriter (oder wie das auch immer jetzt korrekt heißt) schicken, über den auch nachrichten verschickt werden... also werd ich sowas wie ein "codezeichen" vorran schicken, damit der client weiß "achtung, hier kommt ne hashmap vom server und keine nachricht" ... also das is im grunde die idee die dahinter steckt
 
Zuletzt bearbeitet:
also werd ich sowas wie ein "codezeichen" vorran schicken, damit der client weißt "achtung, hier kommt ne hashmap vom server und keine nachricht" ... also das is im grunde die idee die dahinter steckt

Das wird der Client doch schon alleine durchs Casten des Objekts feststellen können.

Aber zu deiner eigentlichen Frage. Natürlich kannst du die Werte einer HashMap in einen String packen. Dir ist aber auch klar, dass du dafür die Schlüssel (Keys) benötigt, damit du an die Werte kommst? An einen Zeilenumbruch kommst du so:

Java:
String separator = System.getProperty("line.Separator");

Anschließend dann einfach ne for-Schleife über die Keys und dann den String zusammenbauen, nach jedem Wert einen separator und gut is.
 
einen String baut man mit + zusammen, es gibt Schleifen, if/else und was man sonst so braucht,
du kannst in Java alles programmieren was du willst, aus der Map ein buntes Bild, eine Melodie oder eben einen mehrzeiligen String nach deinem Wusch basteln,

genau vorhanden wird nicht das sein, was du möchtest, also arbeiten arbeiten arbeiten
 
@Gonzo17

sorry hab ich nicht so ganz kapiert ???:L

also noch ma von vorn... ich mach ja gerade den chatroom und die anmeldung klappt auch und die user werden in die hashmap eingetragen... und die will ich nun vom server aus an die clients schicken damit jeder in einer extra JTextArea sieht wer online is .... so meinte ich das...
nur hab ich nicht so ganz verstanden was du mir da geraten hast
 
Ich weiß jetzt auch nicht, wie du etwas vom Server an den Client schickst, aber generell würde ich dir raten da einfach unterschiedliche Methoden zu verwenden. Der Client kann zB eine Userliste anfordern und dann schickt der Server ein entsprechendes Objekt zurück. Die HashMap selbst würde ich nicht zum Client schicken, da sind doch viel zu viele Informationen für den Client drin. Mit Swing kenn ich mich recht wenig aus, deswegen weiß ich nicht, wie der Input für eine JTextArea aussieht, aber wenns so ein String mit Zeilenumbrüchen tut, dann tu es doch einfach so. Wobei ich dir empfehlen würde das eher in einer Liste statt einer JTextArea zu machen, dann kannst du als Client einen anderen User "markieren" in der Liste und evtl eine Aktion ausführen (privaten Chat starten, Infos anschauen, als Admin/Mod evtl Optionen wie kicken/muten, usw).
 
ok... das mit der Liste is ne gute Idee... dann schau ich mal obs sowas gibt und wie das heißt.
das probier ich jetzt erstmal bevor ich weiter frage...
nur eins noch: woher weiß ich in so einer for schleife wie lang meine hashmap ist, also wie viele durchgänge ich mache und wie ich die ganzen einträge überhaupt durchgehe... geht das auch mit nem index?
 
irgendwie kann ich keine festgesetzte größe bei so einer JList einstellen ... kriegs irgendwie nicht hin... vor allem da sich ja die eintraglänge und anzahl ständig ändert ;(
 

Neue Themen


Zurück
Oben