web-dev-qa-db-ja.com

DOMノードの属性を取得します

私はxmlノードの例の属性を取得しようとしています:

<Car name="Test">
</Car>

Carノードのname属性を取得したいです。

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();          
Document doc = db.parse(configFile);
doc.getDocumentElement().normalize();           
NodeList layerConfigList = doc.getElementsByTagName("CAR");
Node node = layerConfigList.item(0);
// get the name attribute out of the node.

私が使用できるように見える唯一のメソッドはNamedNodeMapを返すgetAttributes()であり、そこからそれを抽出する方法がわからないため、これは私が立ち往生する場所です。

40
MBU

あなたのノードは要素なので、あなたはただ

Element e = (Element)node;
String name = e.getAttribute("name");
71
rurouni

次のような要素を使用せずに実行できます。

//HtmlTag represents any arbitrary node that you are trying to get its "car" attribute 

if("HtmlTag".equals(node.getNodeName()))
 String nodeContent=node.getAttributes().getNamedItem("car").getNodeValue()
14
lonesome
1
ceving