Entwickler-Ecke

Dateizugriff - xml Datei in Treeview einlesen und wieder als Datei speicher


Silvia - Di 28.12.04 16:40
Titel: xml Datei in Treeview einlesen und wieder als Datei speicher
Hallo, ich bräuchte dringend Hilfe!

Ich lese eine XML-Datei in einen TreeView ein und dort manipuliere ich diesen, durch Hinzufügen, Löschen, Kopieren, Editieren, usw. der Knoten.

Nun meine Frage und das eigentliche Problem. Diese neue Struktur des Trees brauche ich wieder als XML-Datei. Wie schreibe ich den TreeView in eine XML-Datei.

Ein konkretes Beispiel wäre super nett!


Vielen herzlichen Dank


Grendel - Di 28.12.04 16:41

Welchen XML Parser nimmst Du?

Bis neulich ...


Silvia - Di 28.12.04 17:59

Ich nehme die Komponente jkXML, Version 1.0

Die Komponente liest eine XML-datei ein und stellt sie als Baum von einem Root-Knoten aus dar. Diesem root-Knoten folgt der Root-Knoten des Dokuments als Nachfahre.

Und das ist das Problem! Die Komponente liest eine xml-Datei ein und stellt sie als Baum von einen Root-Knoten aus dar. Der Root-Knoten wird im Code vorgegeben und den möchte ich nicht vorgeben!

So sieht es aus!


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
procedure TForm1.Button3Click(Sender: TObject);

var pfad :string;
    n:TTreeNode;
    t, t1:longint;
    myFirstXML : IXMLDocument;
    test:string;
begin
OpenDialog1.Execute;
pfad := ExtractFileName(OpenDialog1.FileName);
edit1.Text := pfad;

  jkXML1.filename:=edit1.text;
  jkXML1.ParseXMLFile;
  TreeView1.Items.Clear;
  // hier wird der Root-Knoten Land erstellt!
  ShowXMLTree(TreeView1.items, TreeView1.Items.Add(nil'Land'),jkxml1.XML);
end;


Moderiert von user profile iconMarc: Delphi-Tags hinzugefügt.


Grendel - Di 28.12.04 18:42

Silvia hat folgendes geschrieben:
Ich nehme die Komponente jkXML, Version 1.0

Kenne ich nicht. Ist die frei, so daß man da mal reingucken könnte.
Oder hast Du evtl. ein Delphi >= 7. Dann könntest Du nämlich mit dem TXMLDocument arbeiten.

Bis neulich ...


Silvia - Di 28.12.04 18:52

Freeware --> http://www.jkrieger.de/download/jkxml.zip