Forums Neueste Beiträge
 

XML aktualisieren

23/07/2008 - 17:45 von Carsten | Report spam
Ich habe eine XML Struktur die sich unter umstànden bei einem Update àndern
kann. Jetzt möchte ich eine bestehende Datei mit evt. neuen Knoten erweitern.
In dem u.g. Beispiel könnte z.B. ein weiterer Knoten wie "BasicFunctions5"
hinzukommen oder es könnte innerhalb der "BasicFunctions5" ein Knoten wie
"googleanalytics" hinzukommen, jeweils mit allen Unterknoten. Wie kann ich
das bewerkstelligen? Ich habe es bereits mit einem Merge versucht, aber dabei
duplizieren sich Knoten wie <de> und sind anschließend doppelt in der
Ausgabedatei.

<root>
<BasicFunctions5>
<de>Grundeinstellungen | Google Analytics</de>
<en>Basic settings | Google Analytics</en>
<googleanalytics id="googleanalytics" type="bool">
<text>
<de>Google Analytics verwenden</de>
<en>Use Google Analytics</en>
</text>
<value>False</value>
</googleanalytics>
</BasicFunctions5>
</root>
 

Lesen sie die antworten

#1 Martin Honnen
24/07/2008 - 13:14 | Warnen spam
Carsten wrote:
Ich habe eine XML Struktur die sich unter umstànden bei einem Update àndern
kann. Jetzt möchte ich eine bestehende Datei mit evt. neuen Knoten erweitern.
In dem u.g. Beispiel könnte z.B. ein weiterer Knoten wie "BasicFunctions5"
hinzukommen oder es könnte innerhalb der "BasicFunctions5" ein Knoten wie
"googleanalytics" hinzukommen, jeweils mit allen Unterknoten. Wie kann ich
das bewerkstelligen? Ich habe es bereits mit einem Merge versucht, aber dabei
duplizieren sich Knoten wie <de> und sind anschließend doppelt in der
Ausgabedatei.

<root>
<BasicFunctions5>
<de>Grundeinstellungen | Google Analytics</de>
<en>Basic settings | Google Analytics</en>
<googleanalytics id="googleanalytics" type="bool">
<text>
<de>Google Analytics verwenden</de>
<en>Use Google Analytics</en>
</text>
<value>False</value>
</googleanalytics>
</BasicFunctions5>
</root>



Mit welcher .NET-Version arbeitest du? Mit .NET 3.5 empfiehlt sich "LINQ
to XML", mit früheren Versionen kann man das per DOM lösen:

XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("file.xml"));
XmlElement bf = doc.CreateElement("BasicFunctions5");
doc.DocumentElement.AppendChild(bf);

Weitere Elemente lassen sich mit CreateElement natürlich auch erzeugen
und an bf anhàngen, also etwa
XmlElement de = doc.CreateElement("de");
de.InnerText = "Erweiterte Einstellungen";
bf.AppendChild(de);


Martin Honnen MVP XML
http://JavaScript.FAQTs.com/

Ähnliche fragen