0

我想从一个大的 xml 文件中提取一个值(我正在处理的一个更大的 xml 项目的一部分)

所以xml结构是这样的:

<m:Report>
    <m:Messages>
        <m:report_type>
            <m:Report_Data> (last value)
                <m:Data_Item> (must be specific type)
                <m:Value> (want this)

After this all tags close properly

所以正确的 xpath 查询看起来像这样:

XPathExpression expr = x.compile("//m:Report/m:Messages/m:Report_type/m:Report_Data[m:Data_Iten='PRICE'][last()]/m:Value/text()") ;

我对这个查询不太走运,我哪里出错了?

4

1 回答 1

0

您的查询中只是有错误。Report_type应该是report_type并且Data_Iten应该是Data_Item

XPathExpression expr = x.compile("//m:Report/m:Messages/m:report_type/m:Report_Data[m:Data_Item='PRICE'][last()]/m:Value/text()");

假设Data_Item您的输入数据中有 a PRICE,那么这应该会为您提供<m:Value>.

于 2012-07-26T18:59:32.497 回答