我是使用XML的完全初学者,所以请耐心等待......我正在尝试编写一个简单的方法来返回第一个子元素的指定名称。
我的方法是:
public Element getChild(Element parent, String childName) {
NodeList list = parent.getElementsByTagName(*);
for(int i = 0; i < list.getLength(); i++) {
if (list.item(i).getNodeName().equals(childName)) {
return (Element)list.item(i);
}
}
return null;
}
但是,行NodeList list = parent.getElementsByTagName(*);
给了我一个通用的“非法表达式启动”错误。有人可以解释我做错了什么吗?我一直在谷歌上搜索二十分钟没有运气,这意味着它要么真的模糊不清,要么非常明显。
答案 0 :(得分:0)
将*
放在引号中:parent.getElementsByTagName("*")
答案 1 :(得分:0)
public Element getChild(Element parent, String childName) {
NodeList list = parent.getElementsByTagName(childName);
Node listN=list.item(0);
NodeList listNC= listN.getChildNodes();
Element listE=(Element)listNC;
return listE;
}
它将仅在Parent Element中返回带有childName的第一个元素。如果可能出现多个出现,请使用循环返回元素列表。