我在Android上编写Java以从XML文件中检索数据,但我遇到了问题。考虑一下这个XML:
<ITEM>
<REVENUE_YEAR>2554-02</REVENUE_YEAR>
<REGION>Central</REGION>
</ITEM>
<ITEM>
<REVENUE_YEAR>2552-02</REVENUE_YEAR>
<REGION>Central</REGION>
</ITEM>
<ITEM>
<REVENUE_YEAR>2552-03</REVENUE_YEAR>
<REGION>Central</REGION>
</ITEM>
如何在2552年开始使用年份中的所有元素。我尝试过:
//REVENUE_YEAR[starts-with(.,'2552')]/text()
它有效,但当我尝试时:
//REVENUE_YEAR[starts-with(.,'2552')]/REGION/text()
它不起作用。
答案 0 :(得分:46)
使用:
/*/ITEM[starts-with(REVENUE_YEAR,'2552')]/REGION
注意:除非您的宿主语言无法处理元素实例,否则请勿在混合内容数据模型中专门使用文本节点。当模式众所周知时,不要使用//
运算符启动表达式。
答案 1 :(得分:5)
使用:
//REVENUE_YEAR[starts-with(.,'2552')]/../REGION/text()
答案 2 :(得分:4)
试试这个
//ITEM/*[starts-with(text(),'2552')]/following-sibling::*