如何使用Java检索XML的元素值?
我是XML的新手。我想根据请求名称阅读以下XML。请帮助我了解如何以Java读取以下XML
<?xml version="1.0"?> <config>
<Request name="ValidateEmailRequest">
<requestqueue>emailrequest</requestqueue>
<responsequeue>emailresponse</responsequeue>
</Request>
<Request name="CleanEmail">
<requestqueue>Cleanrequest</requestqueue>
<responsequeue>Cleanresponse</responsequeue>
</Request>
</config>
回答:
如果你的XML是字符串,则可以执行以下操作:
String xml = ""; //Populated XML String....DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document document = builder.parse(new InputSource(new StringReader(xml)));
Element rootElement = document.getDocumentElement();
如果你的XML在文件中,Document document则将被实例化为:
Document document = builder.parse(new File("file.xml"));
在document.getDocumentElement()返回你是文档的文档元素节点(你的情况
一旦有了rootElement,就可以访问元素的属性(通过调用rootElement.getAttribute()method),等等。有关Java的org.w3c.dom.Element
的更多方法
有关Java DocumentBuilder
和DocumentBuilderFactory
的更多信息。请记住,提供的示例将创建一个XML DOM树,因此,如果你有大量XML数据,则该树可能会很大。
相关问题。
更新这是获取元素“值”的示例
protected String getString(String tagName, Element element) { NodeList list = element.getElementsByTagName(tagName);
if (list != null && list.getLength() > 0) {
NodeList subList = list.item(0).getChildNodes();
if (subList != null && subList.getLength() > 0) {
return subList.item(0).getNodeValue();
}
}
return null;
}
你可以有效地称呼它为
String requestQueueName = getString("requestqueue", element);
以上是 如何使用Java检索XML的元素值? 的全部内容, 来源链接: utcz.com/qa/406057.html