Hallo auch,
ich lese mit XmlDocument, also DOM ein XML-File aus (Warum ich nicht den XmlReader nehme ist jetzt mal Nebensache).
Jetzt latsch ich da rekursiv durch die XmlNodes. In der Rekursivfunktion steckt also eine foreach-Schleife foreach (XmlNode oNode in pXmlNode.ChildNodes).
Nun will ich den Text jedes Nodes haben, und woanders hintun.
Gegeben sei sowas wie
<bla>
<tralala>bla</tralala><bla2>nummero2</bla2>
</bla>
wenn ich jetzt oNode.Name = bla ist und ich InnerText abrufe, gibt er mir
"blanummero2" aus. Ich möchte aber "" haben, weil <bla> an sich keinen Text enthält, sondern nur seine Unterknoten, die mich aber zu dem Zeitpunkt nicht interessieren. Wie krieg ich das hin?
dann hab ich noch so tolle Phänomene, dass wenn oNode.Name = tralala ist und ich dann durch oNode.ChildNodes gehe, er einen weiteren Node findet, den es aber gar nicht gibt. Der Name des Tags heißt dann immer "#text". Wie kommt das zustande? den Node gibts doch gar nicht? kann ich den dann mit NodeType rausfiltern?
Diese Sachen hab ich durch Workarounds ziemlich dirty beheben können, aber es wäre schön, wenn es dafür saubere Lösungen/Erklärungen gibt.
Nochwas:
ich habe einen NodeNamen o:Author(Word-XML). In meiner XML-Datei gibt es einen NodeNamen author. Nun latsch ich die Nodes ab und will jedes author-Tag durch o:Author ersetzen. Klappt auch, der NAME des Nodes ist o:Author. Wenn ich das jetzt speichere, zeigt er mir in der XML-Datei aber Author an, weil er o als Prefix erkennt. Wie krieg ich das über XMLDOM hin, dass ich einen Tag erzeugen kann, der dann wirklich nachher in der XML-Datei o:Author heißt?
Wäre genial wenn ihr Ideen habt.
Danke und Gruß,
NRF

ich lese mit XmlDocument, also DOM ein XML-File aus (Warum ich nicht den XmlReader nehme ist jetzt mal Nebensache).
Jetzt latsch ich da rekursiv durch die XmlNodes. In der Rekursivfunktion steckt also eine foreach-Schleife foreach (XmlNode oNode in pXmlNode.ChildNodes).
Nun will ich den Text jedes Nodes haben, und woanders hintun.
Gegeben sei sowas wie
<bla>
<tralala>bla</tralala><bla2>nummero2</bla2>
</bla>
wenn ich jetzt oNode.Name = bla ist und ich InnerText abrufe, gibt er mir
"blanummero2" aus. Ich möchte aber "" haben, weil <bla> an sich keinen Text enthält, sondern nur seine Unterknoten, die mich aber zu dem Zeitpunkt nicht interessieren. Wie krieg ich das hin?
dann hab ich noch so tolle Phänomene, dass wenn oNode.Name = tralala ist und ich dann durch oNode.ChildNodes gehe, er einen weiteren Node findet, den es aber gar nicht gibt. Der Name des Tags heißt dann immer "#text". Wie kommt das zustande? den Node gibts doch gar nicht? kann ich den dann mit NodeType rausfiltern?
Diese Sachen hab ich durch Workarounds ziemlich dirty beheben können, aber es wäre schön, wenn es dafür saubere Lösungen/Erklärungen gibt.
Nochwas:
ich habe einen NodeNamen o:Author(Word-XML). In meiner XML-Datei gibt es einen NodeNamen author. Nun latsch ich die Nodes ab und will jedes author-Tag durch o:Author ersetzen. Klappt auch, der NAME des Nodes ist o:Author. Wenn ich das jetzt speichere, zeigt er mir in der XML-Datei aber Author an, weil er o als Prefix erkennt. Wie krieg ich das über XMLDOM hin, dass ich einen Tag erzeugen kann, der dann wirklich nachher in der XML-Datei o:Author heißt?
Wäre genial wenn ihr Ideen habt.
Danke und Gruß,
NRF
