Autoit3 – XML bestanden uitlezen
In dit voorbeeld laat ik zien hoe je met een Autoit3 script een XML bestand kan uitlezen.
Wat heb je nodig?
1) XML bibliotheek voor Autoit3
Hieronder vind je een voorbeeld bestand, welke we gaan uitlezen, je kan een bestand aanmaken en deze inhoud kopiëren en plakken:
1 2 3 4 5 6 7 8 9 10 11 12 |
<project naam="Mijn project" eigenaar="DomoticX"> <subproject naam="Een subproject" info="Oud"> <tekst>Hallo wereld!</tekst> <datum>2014.01.01</datum> <admin bericht="Dit is het oude project!"/> </subproject> <subproject naam="Tweede subproject" info="Nieuw"> <tekst>Hallo maan!</tekst> <datum>2015.02.02</datum> <admin bericht="Dit is het nieuwe project!"/> </subproject> </project> |
Het Autoit3 script (in dezelfde map) om de XML en de waarden uit te lezen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
#include "_XMLDomWrapper.au3" _XMLFileOpen(@ScriptDir & "\test.xml") $project_naam = _XMLGetAttrib("/project", "naam") $project_eigenaar = _XMLGetAttrib("/project", "eigenaar") $subproject_naam01 = _XMLGetAttrib("/project/subproject[1]", "naam") $subproject_info01 = _XMLGetAttrib("/project/subproject[1]", "info") $subproject_tekst01 = _XMLGetValue("/project/subproject[1]/tekst") $subproject_datum01 = _XMLGetValue("/project/subproject[1]/datum") $subproject_admin01 = _XMLGetAttrib("/project/subproject[1]/admin", "bericht") $subproject_naam02 = _XMLGetAttrib("/project/subproject[2]", "naam") $subproject_info02 = _XMLGetAttrib("/project/subproject[2]", "info") $subproject_tekst02 = _XMLGetValue("/project/subproject[2]/tekst") $subproject_datum02 = _XMLGetValue("/project/subproject[2]/datum") $subproject_admin02 = _XMLGetAttrib("/project/subproject[1]/admin", "bericht") MsgBox(64, $project_naam & " door: " & $project_eigenaar, _ "Subproject: " & $subproject_naam01 & " (" & $subproject_info01 & ")" & @CRLF & _ "Datum: " & $subproject_datum01[1] & @CRLF & "Tekst: " & $subproject_tekst01[1] & @CRLF & _ "Admin bericht: " & $subproject_admin01 & @CRLF & @CRLF & _ "Subproject: " & $subproject_naam02 & " (" & $subproject_info02 & ")" & @CRLF & _ "Datum: " & $subproject_datum02[1] & @CRLF & "Tekst: " & $subproject_tekst02[1] & @CRLF & _ "Admin bericht: " & $subproject_admin02) |
Zodra je het bovenstaande script uitvoert, is dit het resultaat: