DefaultMutableTreeNodes als String in Textdatei speichern

  • Themenstarter Themenstarter Spezi
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
S

Spezi

Gast
Hi,

ich habe ein Programm erstellt, dass aus Basis von Abfragen einen DefaultMutableTreeNode aufbaut.
Jetzt möchte ich gerne das Ergebnis in einer simplen Textdatei speichern. Leider lässt sich dies nicht machen,
da ToString() keinen Wert ausgibt und deshalb sind meine Textdateien immer leer.

Wie kann ich die Treenodes als String abspeichern? Es sollte dann einfach eine Auflistung aller TreeNodes in der Textdatei sein.


gruß
Sebastian
 
Spezi hat gesagt.:
..ich habe ein Programm erstellt, dass aus Basis von Abfragen einen DefaultMutableTreeNode aufbaut.
Jetzt möchte ich gerne das Ergebnis in einer simplen Textdatei speichern. Leider lässt sich dies nicht machen,
da ToString() keinen Wert ausgibt ..
Die toString()-Methode von welcher Klasse meinst du?
Wenn du die Stringdarstellung von DefaultMutableTreeNode willst, dann bekommst du mit toString()
die Stringdarstellung seines Userobjektes:
Code:
DefaultMutableTreeNode newChild = new DefaultMutableTreeNode("new node"); 
System.out.println(newChild);//Ausgabe = "new node"
 
Danke, das funktioniert schon, aber wie kann ich den Wert des Nodes dann in eine Datei speichern?

Code:
try {
			   BufferedWriter out = new BufferedWriter(
					   new OutputStreamWriter(
					     new FileOutputStream( "MyFile.txt" ) ) );
			   		 out.write(System.out.println(MyNode));
					 out.close();
		   	
			   	} catch (IOException e) {}

leider kann er dann "write" nicht auflösen... warum funktioniert das so nicht? bzw was muss ich tun damit der obige code funktioniert?


grüße
Seb
 
die Node-Erstellung sieht bei mir so aus:

Code:
DefaultMutableTreeNode aufgabe = new DefaultMutableTreeNode(a);

ich gebe also keinen direkten String beim Treenode an, sondern das wird bei mir vorher durch eine Auswahl entschieden, wie das Node heißen soll.
 
Danke, funktioniert super, habe das eigentlich auch schon vorher so gehabt und frage mich geradea warum das nicht geklapt hat 🙂

das einzige problem das ich noch habe ist, dass der aufbau des tree über mehrere for schleifen erfolgt. muss ich jetzt unter jedes "add" den gesamten konstrukt

Code:
            try {
			   BufferedWriter out = new BufferedWriter(
					   new OutputStreamWriter(
					     new FileOutputStream( "MyFile.txt" ) ) );
		   		 		out.write(prozess.toString());
		   		 		out.newLine();
		   		 		out.close();
			   	} catch (IOException e) {}

oder muss ich try-catch um alle for schleifen herumbauen?
 
alles klar, habs gerade getestet, funktioniert alles einwandfrei

vielen dank für die schnelle hilfe :toll:
 
nur noch eine kleine frage:

und zwar geht es, dass ich erst den baum in string umwandel und speichere, wenn der baum schon erstellt wurde?
denn momentan speichert er während der erstellung, dadurch verschieben sich aber die nodes, und sind nicht in der richtigen reihenfolge wie im baum.
gibts da eine möglichkeit?
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben