У меня есть этот код в XML-файле:
<?xml version="1.0" encoding="utf-8"?>
<settings id="2.0">
<settings>
<entry key="RecentFiles">
<list>
<value>\\proj01\1.jpg</value>
<value>\\proj01\2.jpg</value>
<value>\\proj01\3.jpg</value>
<value>\\proj01\4.jpg</value>
<value>\\proj01\5.jpg</value>
<value>\\proj01\6.jpg</value>
<value>\\proj01\7.jpg</value>
<value>\\proj01\8.jpg</value>
<value>\\proj01\9.jpg</value>
</list>
</entry>
<child key="Options">
<child key="DefaultFileDialogDirectories">
<entry key="OpenAndSaveDirectory">C:\Users\XXXXX\Desktop</entry>
<entry key="ImportDirectory">\\proj01\</entry>
<entry key="BitmapDirectory">H:\Documents\Screengrabs</entry>
<entry key="ExportDirectory">C:\Users\XXXXX\Desktop\_TempStuff</entry>
<entry key="AttachReferenceFileDirectory">C:\Users\XXXXX\Desktop</entry>
<entry key="WorksessionDirectory">C:\Users\XXXXX\Desktop</entry>
</child>
</child>
</settings>
</settings>
, и я хочу удалить «RecentFiles» и «DefaultFileDialogDirectories»
, чтобы он выглядел следующим образом:
<?xml version="1.0" encoding="utf-8"?>
<settings id="2.0">
<settings>
<entry key="RecentFiles">
<list>
</list>
</entry>
<child key="Options">
<child key="DefaultFileDialogDirectories">
</child>
</child>
</settings>
</settings>
как это сделать?
ниже моей неудачной попытки:
Set objXMLDoc = Wscript.CreateObject("Microsoft.XMLDOM")
objXMLDoc.async = False
Dim XMLFile
XMLFile = "C:\Users\XXXXX\Desktop\settings.xml"
objXMLDoc.load(XMLFile)
Set nodes = objXMLDoc.selectNodes("/settings/settings/entry key='RecentFiles'/list | " & _
"/settings/settings/child key='Options'/child key='DefaultFileDialogDirectories'/")
For Each node In nodes
node.parentNode.removeChild(node)
Next
objXMLDoc.Save(XMLFile)
Я не могу выбрать только "entry" и "child", потому что есть много других используемых узловтот же тег, который я пропустил в приведенном выше коде.
Пожалуйста, помогите!