9. Mai 200916 j Hallo Ich weiß grad nicht weiter.. wie kann ich am besten alle Werte einer properties Datei auslesen (getProperty) und diese in ein TextArea schreiben? Ich schaffe es nur, dass mir die letzten Werte ins TextArea geschrieben werden.. danke laya
11. Mai 200916 j Tja, was hast Du denn bisher? Mit der Klasse Properties kannst Du ja die Daten aus einer Datei einlesen (Methode load()), mit keys() oder keySet() oder elements() holst Du dir alle Schlüssel (= Property-Namen), und mit diesen kannst Du dann über getProperty() oder get() die Werte ermitteln. Wenn Dir die Schlüssel egal sind, kannst Du auch gleich mit values() arbeiten (oder mit entrySet, dann erhältst Du komplette Map.Entry Objekte). Du hast also alle Möglichkeiten der Welt und wir müssen jetzt nur noch wissen, was Du genau machst und welchen Fehler Du erhältst, damit wir Dir helfen können. Peter
11. Mai 200916 j Hallo, danke für deine Antwort. Das Problem was ich habe ist das ich in meiner Properties mehrere gleiche keys (wen das so heisst) stehen habe. Also Name=Name1 Name=Name2 Name=Name3 Jetzt möchte ich mir alle gerne alle Namen in ein TextArea ausgeben lassen. Mit getProperty bekomme ich nur den letzten Eintrag geliefert. Schleife geht auch nicht und das ganze in ein Array speichern klappt auch nicht. Hat jdm eine Idee? Danke laya
11. Mai 200916 j Schleife geht auch nicht und das ganze in ein Array speichern klappt auch nicht. Hat jdm eine Idee?Wenn du in der Lage bist die Aussage "geht nicht" so zu formulieren, dass man auch versteht was du probiert hast und was daran nicht geklappt hat - vielleicht. Solange du aber nicht mal das Problem beschreiben kannst: Nö!
11. Mai 200916 j In einer Schleife einfach die komplette Datei durcharbeiten und die Keys vergleichen. prop.elements().nextElement() Oder einfach eindeutige Keys verwenden, denn deswegen sind es ja Keys... Wenn nur nur stumpf Daten speichern und laden willst dann nutze eine CSV oder XML Datei. Properties sind nun mal Properties.
11. Mai 200916 j danke für die Antworten Ich habe es mit normalen Arrays versucht und mit ArrayList. Glaub ich brauch die Liste. Ich weiß einfach nicht, wie ich die Werte in die ArrayList bekommen. ArrayList <String> liste = new ArrayList<String>(); liste.? Wenn ich es mit nextElement in einer Schleife versuche, bekomm ich immer gleiche Einträge...immer den letzten....wie soll ich die vergleichen?... Danke. Sry alles noch neu für mich laya
11. Mai 200916 j danke für die Antworten ArrayList <String> liste = new ArrayList<String>(); liste.? liste.add( text ); Wenn ich es mit nextElement in einer Schleife versuche, bekomm ich immer gleiche Einträge...immer den letzten....wie soll ich die vergleichen?... Stimmt.... habe mich geirrt. Ich habe das mal debugt und gemerkt das es garnicht geht. Die Properties können immer nur einen Wert für jeden Schlüssel verarbeiten. Diese elements() Methode bringt da nix. Also erzeuge dir halt eine Textdatei in der du die Daten ablegst und einliest, oder eine XML Datei (lesen/schreiben mit DOM oder SAX). Viel Erfolg! Edit: beim erstellen und einlesen kannst du das bei den Properties auch über eine Zählschleife machen und die Keys hochzählen. Also "key1=foo" "key2=bar" ... (ACHTUNG! dirty!)
12. Mai 200916 j Was Du willst, geht mit Properties nicht. Bei Properties gibt es nur einen Wert pro Schlüssel, das hast Du ja bereits gemerkt. Bevor Du jetzt mit irgendwelchen komplizierten XML-Lösungen anfängst: Lies die Datei selbst zeilenweise ein und werte sie aus. Für jede Zeile trennst Du Schlüssel und Wert (String#split()), schaust nach, ob Du für den Schlüssel schon einen Eintrag hast, und wenn nicht, legst Du einen neuen an. Wenn Du schon einen entsprechenden Wert hast, dann merk Dir diesen auch noch. Peter
12. Mai 200916 j Ich weiß einfach nicht, wie ich die Werte in die ArrayList bekommen.Hast du dich denn schonmal mit der API-Dokumentation beschäftigt? Da hättest du z.B. http://java.sun.com/javase/6/docs/api/java/util/List.html#add(E) gefunde. Generell halte ich es für eine verdammt schlechte Vorgehensweise dir hier "bröckchenweise" die benötigten Informationen zu holen anstatt erst einmal in Ruhe die Dokumentation (z.B. auch http://tinyurl.com/ohzrjn) durchzulesen. Du willst schließlich auch verstehen, was die einzelnen Methodenaufrufe wirklich bewirken, oder?
12. Mai 200916 j Ich werde das wohl nochmal überdenken müssen... Danke für die Hilfe und die Links.... Grüße laya
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.