Java 在节点列表XML中查找元素
有没有办法从Java 在节点列表XML中查找元素,java,c++,xml,dom,Java,C++,Xml,Dom,有没有办法从节点列表中获取第一个元素?我使用org.w3c.dom来处理XML文件,我已经使用org.w3c.dom编写了我的大部分程序,直到最近才发现dom4j有一个方法,但我无法使用它,因为它与我的其他方法存在向后兼容性问题 在XML中找到并传递第一个元素非常重要,它必须是org.w3c.dom.Element类型,但是,甚至不使用doc.normalize()起到了作用,使用dom4j方法查找元素并将其强制转换为org.w3c.dom.element也是如此,因为这是禁止的 File fi
节点列表
中获取第一个元素
?我使用org.w3c.dom
来处理XML文件,我已经使用org.w3c.dom
编写了我的大部分程序,直到最近才发现dom4j
有一个方法,但我无法使用它,因为它与我的其他方法存在向后兼容性问题
在XML中找到并传递第一个元素
非常重要,它必须是org.w3c.dom.Element
类型,但是,甚至不使用doc.normalize()
起到了作用,使用dom4j
方法查找元素并将其强制转换为org.w3c.dom.element
也是如此,因为这是禁止的
File file = new File("myXML.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dbuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.newDocument();
doc = dBuilder.parse(file);
doc.normalize;
Element sourceElem = doc.getDocumentElement();
NodeList nodelist = sourceElem.getChildNodes();
Element elem;
if(nodeList.item(0).getNodeType() == Node.ELEMENT_NODE){
elem = (Element)nodeList.item(0);
}
我正在从其他方法获取NullPointerException,因为它找不到元素。
我需要它以与C++代码相同的方式工作:
XmlDocument doc = new XmlDocument();
doc.Load("myXML.xml");
XmlElement elem = (XmlElement)doc.DocumentElement.ChildNodes[0];
编辑:或者有没有办法将dom4j元素转换回org.w3c.dom.Element?
EDIT2:我需要访问的示例XML提供一个示例
XML
会很有用。有评论吗?是的,