AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi XML Dokument nach nach seinen Knoten durchsuchen?
Thema durchsuchen
Ansicht
Themen-Optionen

XML Dokument nach nach seinen Knoten durchsuchen?

Ein Thema von chris_82 · begonnen am 27. Aug 2003 · letzter Beitrag vom 27. Aug 2003
Antwort Antwort
chris_82

Registriert seit: 26. Aug 2003
112 Beiträge
 
Delphi 6 Enterprise
 
#1

XML Dokument nach nach seinen Knoten durchsuchen?

  Alt 27. Aug 2003, 11:42
Wie durchsuche ich ein XML Dokument am einfachsten nach all seinen Knoten und Attributen und speichere mir diese so ab, das ich danach auf jeden einzelnen Knoten zugreifen kann? und alles was innerhalb dieses Knotens steht (incl. unterknoten) in ein anders XML Dokument kopieren kann.

Für alle für die es aussieht wie ..."der will ja ne komplette Lösung"..klar wär nicht schlecht, aber da würd i ja nix mehr bei lernen...

aber einige Anregungen wie ich vorgehen muss währen nicht schlecht....bin nämlich ein absoluter neuling im umgang mit delphi und xml....
....oop und nun...??
http://www.sengewald.info
  Mit Zitat antworten Zitat
lkz633

Registriert seit: 9. Jun 2002
Ort: Aachen
221 Beiträge
 
#2

Re: XML Dokument nach nach seinen Knoten durchsuchen?

  Alt 27. Aug 2003, 12:15
Zitat von chris_82:
Wie durchsuche ich ein XML Dokument am einfachsten nach all seinen Knoten und Attributen und speichere mir diese so ab, das ich danach auf jeden einzelnen Knoten zugreifen kann?

Das verstehe ich nicht. Wiso willst du einen Umweg gehen, wenn du doch bereits direkt auf alle Knoten zugreifen kannst? Oder meinst du wie du auf einen bestimmten Knoten zugreifen kannst?

Gruss lkz633
  Mit Zitat antworten Zitat
chris_82

Registriert seit: 26. Aug 2003
112 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: XML Dokument nach nach seinen Knoten durchsuchen?

  Alt 27. Aug 2003, 12:39
Also ich muss von einem XML Dokument betimmte Knoten auflisten, von welchen man dann einen auswählen kann und alles ab dieser Ebene soll kopiert, in eine andere XML Datei kopiert und voher transformiert werden. Es geht darum das ich mehrere XML-Dateien habe in einer stehen gewisse Daten bis zu einem bestimmten Punkt. Dann habe ich weitere Dateien zu welchen die Fortsetzung der Daten steht. Ich muss nun aus der ersten Datei einen bestimmten Knoten auswählen daraufhin muss die zugehörige andere XML-Datei in die entsprechende Form gebracht werden und es muss eine neue XML-Datei enstehen, in welcher nun die gesamten Daten des transformierten und ein Teil der Daten des Dokuments aus dem ich ausgewählt habe stehen.

Ich weiß ist ziemlich verwirrend.


Schema:


Auswahldatei
/----1----\
/-----1-----\
/------1------\
/-------1-------\

1.-------2.-------3. Datei

Auswahldatei:

<aaa>
<bbb>
<1>
<2>
</bbb>
<bbb>
<3>
<4>
</4>
</aaa>


1.,2.,3. Datei:

<1>
<yyy>
<xxx>
<xxx>
</yyy>
<yyy>
<xxx>
<xxx>
</yyy>
<1>

<2>
<yyy>
<xxx>
<xxx>
</yyy>
<yyy>
<xxx>
<xxx>
</yyy>
<2>
.
.
.

In Ausgangsdatei <2> auswählen, die weiteren Daten zu dem jeweiligen Eintrag liegen wird transformiert und eine neue xml erstellt, welche nun die daten aus der Ausgangsdatei von <bbb><2></bbb> enthält und die entsprechenden daten aus der zu 2 gehörigen datei.

ich hoff das wird langsam klarer, was ich will ;)
....oop und nun...??
http://www.sengewald.info
  Mit Zitat antworten Zitat
chris_82

Registriert seit: 26. Aug 2003
112 Beiträge
 
Delphi 6 Enterprise
 
#4

Re: XML Dokument nach nach seinen Knoten durchsuchen?

  Alt 27. Aug 2003, 12:45
Moment, ich kann ja auf jeder eben mir die anzahl der vorhanden knoten ausgeben lassen und dann schauen ob dieser knoten noch unterknoten hat.

aber das müsst ich ja irgenwie rekursiv machen oder... , dazu bräucht ich dann aber sicher mal n bsp-code weil mit rekursion steh ich irgendwie auf kriegsfuss
....oop und nun...??
http://www.sengewald.info
  Mit Zitat antworten Zitat
lkz633

Registriert seit: 9. Jun 2002
Ort: Aachen
221 Beiträge
 
#5

Re: XML Dokument nach nach seinen Knoten durchsuchen?

  Alt 27. Aug 2003, 12:57
Ok, jetzt ist ein wenig klarer geworden.

Hier mal ein Beispielfunction, die alle Knoten unterhalb des Roots in eine Combobox liest:

Code:
function getnodes;
var xml: ixmldocument;
    i: integer;
begin
    xml:= newxmldocument;
    with xml do begin
      LoadFromFile(extractfilepath(paramstr(0))+'xyz.xml');
      for i:= 0 to DocumentElement.ChildNodes.Count-1 do
        comobox.items.add(DocumentElement.ChildNodes[i].text)
    end;
end;
Schau dir mal am besten die Hilfe fuer xml an, vor allem documentelements, childnodes,indexof,count,attributes

Gruss lkz633
  Mit Zitat antworten Zitat
chris_82

Registriert seit: 26. Aug 2003
112 Beiträge
 
Delphi 6 Enterprise
 
#6

Re: XML Dokument nach nach seinen Knoten durchsuchen?

  Alt 27. Aug 2003, 12:58
nochmals zurück...

hab grad die die xml dateien in die hand bekommen ich muss nach bestimmten attributen suchen, davon eines auswählen und eine neue Datei erzeugen.

die knoten sehen wie folgt aus

Code:
<pKno I="kno.****-BauZ.44" IR="tlg.****-BauZ.29" Typ="TLG" Bez="Leitungshalter für Leitung Rd 8 bis 10/Fl 20 bis 30" Sort_Knoten="94">
                                 <pLKno/>
                                 <pLZuInfo/>
                              </pKno>
ich muss im attribut I nach der jeweiligen nummer suchen (nur nach der nummer)
....oop und nun...??
http://www.sengewald.info
  Mit Zitat antworten Zitat
chris_82

Registriert seit: 26. Aug 2003
112 Beiträge
 
Delphi 6 Enterprise
 
#7

Re: XML Dokument nach nach seinen Knoten durchsuchen?

  Alt 27. Aug 2003, 13:01
nochmals zurück...

hab grad die die xml dateien in die hand bekommen ich muss nach bestimmten attributen suchen, davon eines auswählen und eine neue Datei erzeugen.

die knoten sehen wie folgt aus

Code:
<pKno I="kno.****-BauZ.44" IR="tlg.****-BauZ.29" Typ="TLG" Bez="Leitungshalter für Leitung Rd 8 bis 10/Fl 20 bis 30" Sort_Knoten="94">
                                 <pLKno/>
                                 <pLZuInfo/>
                              </pKno>
ich muss im attribut I nach der jeweiligen nummer suchen (nur nach der nummer)
....oop und nun...??
http://www.sengewald.info
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz