Finding nodes of nodes in an XML file
14 views (last 30 days)
Show older comments
How can I find nodes of element X just in element Y (not in whole of file) ?
<Y>
<X>
<Value>AirMass</Value>
<Value>RailPressure</Value>
<Value>BoostPressure</Value>
</X>
<Y>
<X>
<Value>Speed</Value>
<Value>Torque</Value>
</X>
What I have, returns the whole childs of X:
d = xmlread('myfile.xml')
v = d.getElementsByTagName('X')
for i=0:v.getLength-1
v.item(i).getTextContent
end
I just need to get: AirMass, RailPressure, BoostPressure.
0 Comments
Answers (1)
Robert Ungi
on 5 Jan 2022
Its a bit late, but whoever is looking for such a solution (I altered the smaple xml file above because it is invalid):
% <xml>
% <Y>
% <X>
% <Value>AirMass</Value>
% <Value>RailPressure</Value>
% <Value>BoostPressure</Value>
% </X>
% </Y>
% <X>
% <Value>Speed</Value>
% <Value>Torque</Value>
% </X>
% </xml>
import javax.xml.xpath.*
factory = XPathFactory.newInstance;
import javax.script.ScriptContext;
xpath = factory.newXPath;
fXML=xmlread('SampleXML.xml');
expression = xpath.compile('xml/Y/X/Value');
Value = expression.evaluate(fXML, XPathConstants.NODESET);
for i=0:Value.getLength-1
disp(Value.item(i).getTextContent)
end
0 Comments
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!