title image


Smiley Re: VB6 XML Dateien schreiben
Hallo,



ganz einfach mit dem DOM-Document

z.B. MS-XML 3.0



Unter Projekt/Verweise einbinden!!!!!!!!!!!!!!!!!







Hier ein Beispiel von mir.



Dim oElem01 As IXMLDOMElement

Dim oElem02 As IXMLDOMElement

Dim oElem021 As IXMLDOMElement

Dim oElem03 As IXMLDOMElement

Dim oElem04 As IXMLDOMElement

Dim oElem05 As IXMLDOMElement

Dim oElem06 As IXMLDOMElement

Dim oElem07 As IXMLDOMElement

Dim oInstruct As IXMLDOMProcessingInstruction

Dim Comment As IXMLDOMComment



Dim ii As Integer

Dim iii As Integer





' ----------------------------------------------------------------------------





' --> Instanzieren des DOMObjektes

Set oDOM = New DOMDocument



' --> Hier schreiben wir die Processing Instruktionen in das Xml Dokument

' --> Dort wird die XML Version und die Codierung des Dokumentes festgelegt

Set oInstruct = oDOM.createProcessingInstruction("xml", "version=""1.0""" & strISO)

Call oDOM.insertBefore(oInstruct, oDOM.childNodes.item(0))



Set Comment = oDOM.createComment("Test-Comment")

oDOM.appendChild (Comment)





' --> Hier erstellen wir das Rootelement welches die Datenelement aufnehmen wird

Set oElem01 = oDOM.createElement("KollPlot")

' --> Anfügen des Root Elementes an das Dokument

oDOM.appendChild oElem01



' --> Durchlaufen des Datencontainer Arrays und anfügen der Daten an das Root Element



Set oElem02 = oDOM.createElement("Definition")

oElem01.appendChild oElem02



Set oElem03 = oDOM.createElement("Anz")

oElem02.appendChild oElem03

oElem03.Text = "Beispielwert"



Set oElem03 = oDOM.createElement("AnzahlPrg")

oElem02.appendChild oElem03

oElem03.Text = "AnzPrg"

Set oElem03 = oDOM.createElement("Texte")

oElem02.appendChild oElem03



Set oElem04 = oDOM.createElement("Text01")

oElem03.appendChild oElem04

oElem04.Text = "Text1111111111111111"

Set oElem04 = oDOM.createElement("Text02")

oElem03.appendChild oElem04

oElem04.Text = "Text22222222222222"

Set oElem04 = oDOM.createElement("Text03")

oElem03.appendChild oElem04

oElem04.Text = "Text333333333333333333"



For iii = 1 To 5



Set oElem03 = oDOM.createElement("PDat" & Format$(iii, "000"))

oElem02.appendChild oElem03



Set oElem04 = oDOM.createElement("MPrg")

oElem03.appendChild oElem04

oElem04.Text = cstr(iii)

Set oElem04 = oDOM.createElement("IstKm")

oElem03.appendChild oElem04

oElem04.Text = 23456

Set oElem04 = oDOM.createElement("PName")

oElem03.appendChild oElem04

oElem04.Text = "TestName"

Set oElem04 = oDOM.createElement("SollKm")

oElem03.appendChild oElem04

oElem04.Text = "TestNameSoll"

Set oElem04 = oDOM.createElement("Notiz")

oElem03.appendChild oElem04

oElem04.Text = "TestNameNotiz"

Set oElem04 = oDOM.createElement("Marker")

oElem03.appendChild oElem04

oElem04.Text = "TestNameMarker"

Next



Call oDOM.Save("C:\temp\testname.xml")







Ist nur ein Auszug aus meinem Code, sollte aber zeigen wie es geht.



Das Dom hat den Vorteil, dass man zuerst alles ins Dom, sprich ins Memory schreibt und zuerst am Schluss speichert.



Das gleiche ist dann beim Einlesen, man liest den XML-File komplett ins Dom ein, und greift dann auf die einzelnen Tags zu.



Änderungen sind somit auch möglich.

Einlesen, Ändern speichern.







Gruss hupsi


Es ist nie zu spät, es gibt immer eine Lösung!

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: