![]() |
Wie eine Sub Sub Node erstellen
Ich nutze NativeXML und möchte innerhalb einer subnode noch eine subnode erstellen. Weis aber nicht wie.
So soll das mal aussehen:
Code:
Es geht um die <neuessub> node. Die bekomme ich nicht hin.
<gpx>
<name>Petersen</name> <vorname>Peter</vorname> <wpt> <kind1>Jan</kind1> <kind2>Florian</kind2> <neuessub> <daten1>Test</daten1> <daten2>Test</daten2> </neuessub> </wpt> </gpx> Hier mein Code:
Delphi-Quellcode:
Kann mir bitte jemand erkläre wie ich da eine weiter subnode hinbekomme? Danke!!
XMLDoc := TNativeXML.CreateName('gpx');
xmlDoc.Root.AttributeAdd('xmlns:xsi','http://www.w3.org/2001/XMLSchema-instance'); xmlDoc.Root.AttributeAdd('xmlns:xsd','http://www.w3.org/2001/XMLSchema'); xmlDoc.Root.AttributeAdd('version','1.0'); xmlDoc.Root.AttributeAdd('creator','GCT'); xmlDoc.Root.AttributeAdd('xsi:schemaLocation','Test'); xmlDoc.Root.AttributeAdd('xmlns','http://www.topografix.com/GPX/1/0'); xmlDoc.Root.NodeNew('name').Value := 'Planer'; xmlDoc.Root.NodeNew('desc').Value := 'Planer'; xmlDoc.Root.NodeNew('author').Value := 'GC'; xmlDoc.Root.NodeNew('email').Value := 'temp@aol.de'; datamodule1.TourTable1.First; for i := 1 to datamodule1.TourTable1.RecordCount do begin with xmlDoc.Root.NodeNew('wpt') do begin WriteAttributeString('lat',datamodule1.TourTable1CacheLat.AsString); WriteAttributeString('lon',datamodule1.TourTable1CacheLon.AsString); WriteString('time', datamodule1.TourTable1CacheTime.AsString); WriteString('name', datamodule1.TourTable1CacheName.AsString); WriteString('desc', datamodule1.TourTable1CacheDesc.AsString); WriteString('url', datamodule1.TourTable1CacheUrl.AsString); WriteString('urlname', datamodule1.TourTable1CacheUrln.AsString); WriteString('sym', datamodule1.TourTable1CacheSym.AsString); WriteString('type', datamodule1.TourTable1CacheType.AsString); // hier sollte die Sub SubNode eingefügt werden !!!! datamodule1.TourTable1.Next; end; end; xmlDoc.XmlFormat := xfReadable; XMLDoc.SaveToFile('test.gpx'); |
AW: Wie eine Sub Sub Node erstellen
Gibts da nicht eine Funktion AddChild()? Diese sollte dir eine Referenz auf den neuen Node liefern und dann kannst du darauf ja wieder AddChild() anwenden etc.
|
AW: Wie eine Sub Sub Node erstellen
Über AddChild finde ich nichts bei NativexML
|
AW: Wie eine Sub Sub Node erstellen
Habe gerade mal in die Doku geschaut und bin über NodeNew gestoßen:
Zitat:
|
AW: Wie eine Sub Sub Node erstellen
zb liefert dir :
Delphi-Quellcode:
als Ergebnis wieder einen TXMLNode.
xmlDoc.Root.NodeNew('wpt')
Dh.
Delphi-Quellcode:
aber da gibt es sicher noch andere Lösungen...
var
ChildNode, SubChild : TXMLNode; begin ChildNode := xmlDoc.Root.NodeNew('wpt'); SubChild := ChildNode.NodeNew('xxx'); |
AW: Wie eine Sub Sub Node erstellen
Vielen Dank! Habe es verstanden und funktioniert prima :)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz