Страница: 1 |
Можно ли работать с XML в VB6? Если да то как? Нужно считывать и записывать инфу (из/в определённые узлы).
Можно. Удачи А можно по подробнее а то самому никак не догадаться... Конкретно как прочитать инфу и как записать. Для примера выдрал код из своей программы. Переменные: Dim XMLDoc As DOMDocument Запись XML файла: Set XMLDoc = New DOMDocument Чтение XML файла: Set XMLDoc = New DOMDocument Страница: 1 |
Вопрос: XML
Добавлено: 12.05.03 15:57
Автор вопроса: V_B@SIC_mk
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
boevik
Хранитель чата
ICQ: 137392264
Вопросов: 8
Ответов: 557
Web-сайт:
Профиль | | #1
Добавлено: 12.05.03 16:56
Удобно работать с помощью библиотеки: Microsoft XML, version X.X
класс: DOMDocument.
Номер ответа: 2
Автор ответа:
V_B@SIC_mk
Вопросов: 14
Ответов: 19
Профиль | | #2
Добавлено: 12.05.03 18:09
Номер ответа: 3
Автор ответа:
boevik
Хранитель чата
ICQ: 137392264
Вопросов: 8
Ответов: 557
Web-сайт:
Профиль | | #3
Добавлено: 13.05.03 14:02
Dim Node As IXMLDOMNode, newNode As IXMLDOMNode
Dim InputNode As IXMLDOMNode
Dim OutputNode As IXMLDOMNode
Dim NodeList As IXMLDOMNodeList
Dim OutputListNodes As IXMLDOMNodeList
'create root node
Set Node = XMLDoc.appendChild(XMLDoc.createNode(NODE_ELEMENT, "Loto", ""))
'create "Input" child node of "Loto"
Set InputNode = Node.appendChild(XMLDoc.createNode(NODE_ELEMENT, "Input", ""))
'create "Numbers" child node of "Input"
Set Node = InputNode.appendChild(XMLDoc.createNode(NODE_ELEMENT, "Numbers", ""))
'create "Number" childs of "Numbers"
For i = 0 To lAmountNumbers - 1
Set newNode = Node.appendChild(XMLDoc.createNode(NODE_ELEMENT, "Number", ""))
newNode.Text = alNumber(i)
Next i
'create "EvenNumbers" node
Set newNode = InputNode.appendChild(XMLDoc.createNode(NODE_ELEMENT, "EvenNumbers", ""))
newNode.Text = Val(lEvenAmount)
'save file
XMLDoc.save App.Path & "\laststate.xml"
'load file
XMLDoc.Load App.Path & "\laststate.xml"
Set InputNode = XMLDoc.getElementsByTagName("Input").Item(0)
Set Node = InputNode.selectSingleNode("Numbers") 'select node "Numbers"
Set NodeList = Node.selectNodes("Number") 'select list nodes "Number"
If NodeList.length > 0 Then
ReDim alNumber(NodeList.length - 1)
lAmountNumbers = NodeList.length
For i = 0 To lAmountNumbers - 1
Set Node = NodeList.Item(i)
alNumber(i) = Node.Text
Next i
End If
'load even numbers in series
lEvenAmount = InputNode.selectSingleNode("EvenNumbers").Text