繁体   English   中英

在Java中使用Xpath从大型xml文件中提取值

[英]Using Xpath in java to extract a value from a large xml file

我想从一个大型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()") ;

我在此查询中运气不佳,我在哪里出错?

您的查询中仅存在错误。 Report_type应该是report_typeData_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()");

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM