2011-05-03 1 views
0

Я знаком с использованием библиотеки MSXML2 для чтения xml-файлов. Но есть ли простой способ редактирования определенного узла. Скажем, у меня есть следующие строки кода, который выбирает dataroot элемент, который имеет атрибут generated:Что является самым простым способом удаления атрибута узла XML-файла в vb?

Dim oDoc as MSXML2.DOMDocument 
Dim oNode as MSXML2.IXMLDOMNode  

Set oDoc = ... //open xml file here// 
Set oNode = oDoc.selectSingleNode("/root/dataroot/[@generated]") 

Я хочу, чтобы иметь возможность удалить атрибут generated от выбранного узла и сохранить изменения обратно в исходный файл.

ответ

0

Чтобы удалить атрибут из узла:

oNode.removeAttribute("generated"); 

Чтобы сохранить изменения:

oDoc.save("changed.xml") 
+0

Метод removeAttribute для меня не существует! Я использую MSXML v6.0. Есть идеи? – David

+0

Ну его в документации. Возможно, попробуйте ответить @ dunc. –

+0

@RichardSchneider Просто выяснилось, что метод removeAttribute доступен только в том случае, если oNode объявлен как MSXML2.IXMLDOMElement, а не MSXML2.IXMLDOMNode – David

3

удалить атрибут из коллекции Атрибуты данного узла:

oNode.Attributes.removeNamedItem "generated" 
+0

Я нашел, что ваше решение работает тоже. – David

 Смежные вопросы

  • Нет связанных вопросов^_^