我第一次使用XPath。当我试图从xml获取节点时,我得到一个具有空值的节点。
这里的xml文件看起来像..
<?xml version="1.0" encoding="UTF-8"?>
<Message>
<Header>
<FromCompany>Content</FromCompany>
<From>Source</From>
<FromEmail>eg@eg.com</FromEmail>
<Toy>Pocket</Toy>
<SentDate>20300709</SentDate>
</Header>
...
我写了xpath expr如下...
public XPath xPath = XPathFactory.newInstance().newXPath();
Node message = (Node) xPath.evaluate("/Message", pxml, XPathConstants.NODE);
System.out.println("message::" + message);
当我执行消息时,节点不为空,而是打印数据为 message :: [Message:null]
我无法获取节点的内容..有人可以帮我找到我做错了吗?
答案 0 :(得分:2)
在此上下文中,xPath将返回org.w3c.dom.Node
,这是预期的(我希望)。
要获取节点的内容,您需要使用Node#getTextContent
,使用您的示例输出... {/ p>
Content
Source
eg@eg.com
Pocket
20300709