Может ли кто-нибудь дать мне подсказку, как получить значения из G_Q9, если значение в G_Q1 равно x? Если значение G_Q1 ‹> x, переходите к следующему G_Q1. Мне не нравится формат XML-файла, но я должен адаптироваться к нему.
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Generated by Oracle Reports version 12.2.1.3.0 -->
<WOKE611>
<LIST_G_Q1>
<G_Q1>
<Value>1234</Value>
<LIST_G_Q9>
<G_Q9>
<Value>0</Value>
</G_Q9>
<G_Q9>
<Value>1</Value>
</G_Q9>
</LIST_G_Q9>
</G_Q1>
<G_Q1>
<Value>5678</Value>
<LIST_G_Q9>
<G_Q9>
<Value>0</Value>
</G_Q9>
<G_Q9>
<Value>1</Value>
</G_Q9>
</LIST_G_Q9>
</G_Q1>
</LIST_G_Q1>
</WOKE611>
Dim i
Set objXMLDoc = CreateObject("Msxml2.DOMDocument.6.0")
objXMLDoc.Async = False
objXMLDoc.Load("C:\temp\shortXml.xml")
Set NodeList = objXMLDoc.SelectNodes("//G_Q1/*")
For i = 1 To NodeList.Length
Set CurrNode = NodeList.NextNode
If CurrNode.Text = "1234" Then
WScript.Echo("How to continue to get the value of G_Q9/Value ?")
End If
Next
Я решил это, изменив SelectNodes("//G_Q1/*")
на SelectNodes("//*")
.