Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
Delphi 12 Athens
|
AW: XML-Node kopieren
7. Aug 2012, 15:09
Delphi-Quellcode:
// klont den Knoten "movie[id=3]" und speichert ihn in NewNode
//movies := xmlDoc.documentElement.selectNodes('movie'); // nicht verwendet
oldNode := xmlDoc.documentElement.selectSingleNode(' /movieorganizer/movie[id="3"]');
newNode := OldNode.cloneNode(True);
// mit NewNode wird nichts gemacht und es wird am Ende der Prozedur wieder weggeworfen
// ließ einfach mal, was in der OH zu cloneNode (Xmldom.IDOMNode.cloneNode) steht.
Aber du willst ja wohl irgendwas in dieser Richtung haben:
Delphi-Quellcode:
// kopiert Inhalt von 3 nach 5
oldNode := xmlDoc.documentElement.selectSingleNode('/movieorganizer/movie[id="3"]');
newNode := xmlDoc.documentElement.selectSingleNode('/movieorganizer/movie[id="5"]');
for i := 0 to newNode.childNodes.length - 1 do
newNode.appendChild(oldNode.childNodes.item[i].cloneNode(True));
// oder
// kopiert die 3, benennt die Kopie in 5 um
oldNode := xmlDoc.documentElement.selectSingleNode('/movieorganizer/movie[id="3"]');
newNode := xmlDoc.documentElement.selectSingleNode('/movieorganizer');
clone := oldNode.cloneNode(True);
clone.attributes.getNamedItem('id').text := '5';
newNode.appendChild(clone);
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
Geändert von himitsu ( 7. Aug 2012 um 15:12 Uhr)
|