Вот так можно получить данные:
Код:
#include <_XMLDomWrapper.au3>
$FILE = @ScriptDir & "\test.xml"
$READ = FileRead($FILE)
$iLoad = _XMLLoadXML($READ)
If Not $iLoad Then Exit -1
$sPath = _XMLGetValue("/file/gcc/MASTER_PATH/str")
ConsoleWrite($sPath[1] & @LF)
записать обратно с этой библиотекой мне пока не удалось, поэтому вот пример с парсированием строк:
Код:
_XMLSetValue("Test.xml", "gcc/MASTER_PATH/str", "D:\Other\mingw32")
Func _XMLSetValue($sFile, $sPath, $sValue)
$sRead = FileRead($sFile)
$sPattern = ''
$sData = ''
$aSplitPath = StringSplit($sPath, '/')
For $i = 1 To $aSplitPath[0]
$sPattern &= '.*?<' & $aSplitPath[$i] & '>.*?'
Next
$sData = StringRegExpReplace($sRead, '(?si)(' & $sPattern & '\Q<![CDATA[\E).*?(\Q]]>\E).*?', '\1' & StringReplace($sValue, '\', '\\') & '\2')
$hFile = FileOpen($sFile, 2)
FileWrite($hFile, $sData)
FileClose($hFile)
EndFunc