我有一个简单的xml文档,我正在尝试使用org.w3c.dom.Document来获取根节点的描述
<?xml version="1.0" encoding="ISO-8859-1"?><students mlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="students.xsd"><description>A bunch students and courses</description><student studentID="0144085" gender ="M"><firstname>Jack</firstname>
这是我的代码
DocumentBuilderFactory builderFactory = DocumentBuilderFactory
.newInstance();
builderFactory.setNamespaceAware(true);
builderFactory.setValidating(true);
builderFactory.setAttribute(JAXP_SCHEMA_LANGUAGE,
W3C_XML_SCHEMA);
DocumentBuilder builder = builderFactory.newDocumentBuilder();
// parse the input stream
document = builder.parse(in);
document.getDocumentElement().normalize();
// JAXP
Node rootXMLNode = document.getDocumentElement();
DOMParser parser = new DOMParser();
//jf : set StudentINfoSet class properties
this.description = rootXMLNode.getTextContent();
//DOMUtilities.getAttributeString(rootXMLNode,"description");
现在是rootXMLNode.getTextContent();将整个xml文档作为字符串返回,如何才能获得根节点的description标记。
非常感谢你。
答案 0 :(得分:2)
有很多方法,但最简单的方法是使用像getElementsByTagName
这样的方法获取description
元素,然后使用getTextContent
。
Element rootXMLNode = document.getDocumentElement();
//jf : set StudentINfoSet class properties
this.description = rootXMLNode.getElementsByTagName( "description" )
.item( 0 ).getTextContent();
但是,使用像XPath这样的东西可能会更好......