My XML is structured as shown below. I am trying to get attribute values ββfrom XML using dom4j.
<baz> <foo> <bar a="1" b="2" c="3" /> <bar a="4" b="5" c="6" /> </foo> </baz>
Currently, nodes are stored in a list with the following code:
public List<Foo> getFoo() { String FOO_XPATH = "//baz/foo/*"; List<Foo> fooList = new ArrayList<Foo>(); List<Node> fooNodes = _bazFile.selectNodes(FOO_XPATH); for (Node n : fooNodes) { String a = String b = String c = fooNodes.add(new Foo(a, b, c)); } return fooNodes; }
There is a similar but different question here , but it returns the node value for a known key / attribute value pair using the following code:
Node value = elem.selectSingleNode("val[@a='1']/text()");
In my case, the code knows the keys, but does not know the values ββ- what do I need to store. (The above snippet from a similar question / answer also returns the text value of the node when I need the attribute value.)
source share