如何在Java中使用XPath解析XML
我想得到一个标记名控件作为结果。我正在使用XPath解析XML文件。目前我只得到一个空白窗口,我不知道为什么 我的XML文件:如何在Java中使用XPath解析XML,java,xml,parsing,Java,Xml,Parsing,我想得到一个标记名控件作为结果。我正在使用XPath解析XML文件。目前我只得到一个空白窗口,我不知道为什么 我的XML文件: <tags> <row Id="1" TagName="soccer" Count="7" ExcerptPostId="12371" WikiPostId="12370" /> <row Id="2" TagName="servos" Count="63" ExcerptPostId="186" WikiPostId="185"
<tags>
<row Id="1" TagName="soccer" Count="7" ExcerptPostId="12371" WikiPostId="12370" />
<row Id="2" TagName="servos" Count="63" ExcerptPostId="186" WikiPostId="185" />
<row Id="3" TagName="control" Count="394" ExcerptPostId="192" WikiPostId="191" />
<row Id="5" TagName="gait" Count="4" ExcerptPostId="12362" WikiPostId="12361" />
</tags>
预期产出应为:
我的输出:控制
您正在得到一个异常,您正在默默地使用它。将e.printStackTrace添加到catch块以了解它是什么 假设您解决了这个问题,那么您似乎也在使用xpath来选择空的自关闭元素的文本内容 如果要选择元素属性的值,需要执行以下操作:
/tags/row[@TagName='control']/@TagName
有关更多信息,请参阅此SO帖子:您是否尝试过调试它?您是否遇到任何异常?还可以在catch块中临时添加e.printStackTrace,以便查看可能引发的异常。只需一个词:controlyes,我的输出:control您的xpath应该以双斜杠//标记开头。
/tags/row[@TagName='control']/@TagName