AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Xmlnode.childnodes.Add Howto

Ein Thema von value is NULL · begonnen am 19. Sep 2011 · letzter Beitrag vom 19. Sep 2011
Antwort Antwort
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#1

Xmlnode.childnodes.Add Howto

  Alt 19. Sep 2011, 11:11
Hi Leute

Will mir gerade ein XML Tool basteln welches folgendes macht:

Ich habe ein XML welches wie folgt aussieht (zumindest ein Teil davon):

Code:
<module>
 <module servername="WIN2K3-V3-3" type="MGR" moduleindex="0" />
 <module servername="WIN2K3-V3-3" type="ACCM" moduleindex="101" />
 <module subtype="virtual" servername="WIN2K3-V3-3" type="hw" moduleindex="102" />
 <module subtype="virtual" servername="WIN2K3-V3-3" type="sw" moduleindex="104" />
 <module subtype="virtual" servername="WIN2K3-V3-3" type="Web" moduleindex="110" />
 <module subtype="physical" servername="WIN2K3-V3-3" type="system" moduleindex="200" />
 <module subtype="virtual" servername="WIN2K3-V3-3" type="system" moduleindex="201" />
 <module subtype="physical" servername="WIN2K3-V3-3" type="system" moduleindex="444" />
 <module subtype="virtual" servername="WIN2K3-V3-3" type="system" moduleindex="608" />
</module>
ich möchte mir jetzt ein kleines xmltool schreiben, welches mir per commandline module hinzufügt bzw. wieder löscht. Ich benutze dafür "xmlintf" und "xmldoc"

ich lade mir das xml
xml := LoadXMLDocument('C:\test\app\config\cfg.xml'); und will es jetzt ändern. Ich haber aber bisher nur mit
myNode.ChildNodes.FindNode('post').Text := '1'; gearbeitet. Wie kann ich das am schönsten realisieren?! Bin XML technisch nicht so bewandert und schon froh das ich mir überhaupt Werte auslesen kann

LG und Danke schon mal

Geändert von value is NULL (19. Sep 2011 um 14:58 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

AW: Xml

  Alt 19. Sep 2011, 11:19
Bitte gebe deinem Beitrag einen aussagekräftigen Titel. Wir haben hier eine ganze Sparte die XML heißt.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#3

AW: Xml

  Alt 19. Sep 2011, 14:23
@ Luckie
wie mach ich das den ?!

zu meine Problem, das mit dem delete habe ich bereits auf die Reihe bekommen aber mit dem ADD bin ich akut eher planlos :/

LG
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.430 Beiträge
 
Delphi 7 Enterprise
 
#4

AW: Xml

  Alt 19. Sep 2011, 14:27
Du kannst den Titel über Bearbeiten->Erweitert ändern.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#5

AW: Xmlnode.childnodes.Add Howto

  Alt 19. Sep 2011, 14:59
erledigt!

kan mir jemand erklären wie ich zu einer erstellten Node mehrer Attribute hinzufügen kann? Ich habe zwar schon was mit OpenXML gesehen verwende aber überall und immer
xmlintf, xmldoc

Für ein kleines Beispiel wäre ich sehr dankbar!

LG
  Mit Zitat antworten Zitat
Benutzerbild von FaTaLGuiLLoTiNe
FaTaLGuiLLoTiNe

Registriert seit: 3. Jul 2004
Ort: NRW
55 Beiträge
 
Delphi XE Enterprise
 
#6

AW: Xmlnode.childnodes.Add Howto

  Alt 19. Sep 2011, 15:15
Wenn mich nicht alles täuscht:

XMLNode.Attributes[Attributname] := Attributwert;

Wenn noch kein Attribut mit dem angegebenen Namen existiert, wird es automatisch hinzugefügt.
Existiert das Attribut bereits, wird nur der Wert geändert.
Christian
<< FaTaLGuiLLoTiNe >>
Rhinoceroses don't play games!
  Mit Zitat antworten Zitat
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#7

AW: Xmlnode.childnodes.Add Howto

  Alt 19. Sep 2011, 15:26
du hast recht

das funktioniert prima, ABER wie kann ich zu einem Node mehrere Elemente hinzufügen? so funktionierts ja mit einem:

xmlnode.AddChild('module').Attributes['subtype'] := 'value';
  Mit Zitat antworten Zitat
Benutzerbild von FaTaLGuiLLoTiNe
FaTaLGuiLLoTiNe

Registriert seit: 3. Jul 2004
Ort: NRW
55 Beiträge
 
Delphi XE Enterprise
 
#8

AW: Xmlnode.childnodes.Add Howto

  Alt 19. Sep 2011, 15:31
AddChild gibt dir die Referenz auf den erstellten Knoten zurück.
Die kannst du speichern und dann damit weiterarbeiten.

Delphi-Quellcode:
NewNode := XMLNode.AddChild('module');
NewNode.Attributes['subtype'] := 'virtual';
NewNode.Attributes['servername'] := 'WIN2K3-V3-3';

usw...
Christian
<< FaTaLGuiLLoTiNe >>
Rhinoceroses don't play games!
  Mit Zitat antworten Zitat
value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#9

AW: Xmlnode.childnodes.Add Howto

  Alt 19. Sep 2011, 15:37
Geile Sache! Funzt wie ne 1

LG
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 11:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf