hrwsiggi

VB.Net - XML Datei einlesen, bestimmten Inhalt suchen und Inhalt hinzufügen

Hallo Leute!

Ich möchte gerne etwas in VB (ich benutze momentan 2008 Express) realisieren:

Ich möchte eine vorhandene XML-Datei einlesen, in dieser einen bestimmten (sich wiederholenden) Knoten und dessen Inhalt suchen. Wenn dieser Inhalt mein gesuchter Inhalt ist, dann soll ein Knoten hinzugefügt und die Datei wieder abgespeichert werden.

Habe schon einige Lösungsansätze gefunden, kriegs aber dennoch nicht richtig hin. Weiß auch nicht was besser ist: per Linq, XMLDocument oder was auch immer.

Die vorhandene XMLDatei hat in etwa folgenden Aufbau:


<?xml version="1.0"?>
<Typ="Typ1">
<Knoten>
blablabla
</Knoten>
....
<Positionen>
<Position>123456</Position>
<Position>654321</Position>
...
</Positionen>
</Typ>

Ich will jetzt z.B. wissen ob in dieser Datei ein Positions-Knoten mit dem Inhalt "123456" drin ist. Wenn ja, dann soll ein weiterer Positions-Knoten mit dem Inhalt "irgendwas" hinzugefügt werden.

Bitte um Lösungsansätze. face-smile

Danke im Voraus.
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 157493

Url: https://administrator.de/forum/vb-net-xml-datei-einlesen-bestimmten-inhalt-suchen-und-inhalt-hinzufuegen-157493.html

Ausgedruckt am: 01.06.2025 um 09:06 Uhr

bastla
bastla 23.12.2010 um 11:25:22 Uhr
Goto Top
Hallo HrwSiggi!

Als VBScripter würde ich einfach den Dateiinhalt am Stück einlesen ("ReadAll") und nach einem
Replace(Dateiinhalt, "<Position>123456</Position>", "<Position>123456</Position>" & vbCrLf & "<Position>irgendwas</Position>")
mit einem "Write" wieder in die Datei schreiben ...

... ausformuliert also etwa:
Datei = "D:\Die.xml"  
Set fso = CreateObject("Scripting.FileSystemObject")  
T = fso.OpenTextFile(Datei).ReadAll
fso.CreateTextFile(Datei).Write Replace(T, "<Position>123456</Position>", "<Position>123456</Position>" & vbCrLf & "<Position>irgendwas</Position>")  
Grüße
bastla
HrwSiggi
HrwSiggi 23.12.2010 um 11:58:27 Uhr
Goto Top
Danke bastla, aber ich würde gern wissen wie es mit den XMLObjekten funktioniert.
bastla
bastla 23.12.2010 um 12:45:28 Uhr
Goto Top
Hallo HrwSiggi!

Demnach habe ich
Weiß auch nicht was besser ist: per Linq, XMLDocument oder was auch immer.
falsch verstanden ...

Grüße
bastla