Ich habe eine XPath-Abfrage //*[local-name()='Home Query Data']
, getestet here. Jetzt muss ich diesen XPath ausführen, um den gesamten Text innerhalb von <Home Query Data> --- </Home Query Data>
Tag zurückzugeben.XML-DOM, um Text innerhalb eines Tags zu erhalten
Welchen DOM-Selektor sollte ich verwenden, um den gesamten Text innerhalb des Tags auszuwählen? Like: objMSXML.selectNodes(XPath)
bearbeiten
ich VBScript für meine Programmierung verwende. Mein Code ist unten:
Sub ReadXml(FileName)
Dim nodeinfo (4)
Dim sXPath
Set fso = CreateObject("Scripting.FileSystemObject")
Set fileObj = fso.GetFile(FileName)
objMSXML.async = True
objMSXML.load FileName
If 0 = objMSXML.parseError Then
sXPath = "//*[local-name()='Home Query Data']"
End If
Dim querySubject : Set querySubject = objMSXML.selectSingleNode(sXPath)
If querySubject Is Nothing Then
MsgBox sXPath, "failed" ** Error type mismatch [string "failed"]**
Else
For Each node In objMSXML.selectNodes(sXPath)
MsgBox node
Next
End If
End Sub
ich es für einen anderen Posten kopiert habe und nicht in der Lage, herauszufinden, wie gesamten Text in XML-Tag zurückzukehren.
Ich habe ein Problem in diesem Abschnitt:
Dim querySubject : Set querySubject = objMSXML.selectSingleNode(sXPath)
If querySubject Is Nothing Then
MsgBox sXPath, "failed"
Else
For Each node In objMSXML.selectNodes(sXPath)
MsgBox node
Next
End If
EDIT2
Meine Arbeits XML ist wie:
<?xml version="1.0" encoding="UTF-8"?>
<breakfast_menu>
<food>
<name locale="en">Stage Query Data</name>
<price>$5.95</price>
<description>Our famous Belgian Waffles with plenty of real maple syrup</description>
<calories>650</calories>
</food>
<drink>
<name locale="en">Home Query Data</name>
<price>$4.50</price>
<description>Thick slices made from our homemade sourdough bread</description>
<calories>600</calories>
</drink>
<mix>
<name locale="en">Report Query Data</name>
<price>$6.95</price>
<description>Two eggs, bacon or sausage, toast, and our ever-popular hash browns</description>
<calories>950</calories>
</mix>
</breakfast_menu>
I Text innerhalb Tag erfassen müssen <drink>
, dessen Name Home Query Data
.
<name locale="en">Home Query Data</name>
<price>$4.50</price>
<description>Thick slices made from our homemade sourdough bread</description>
<calories>600</calories>
Derzeit ich an MsgBox sXPath bin immer, "nicht bestanden" ** Fehler type mismatch [string "nicht bestanden"] **
haben Sie versucht, 'node.text'? https://msdn.microsoft.com/en-us/library/ms763798.aspx –
das Problem mit Xpath. es sagt Typ Mismatch sxpath .... –
Zeigen Sie die vollständige Fehlermeldung. Zeigen Sie auch ein repräsentatives (funktionierendes) Beispiel Ihrer XML-Daten. –