Получить конкретные XML-значения с помощью конфигурации Commons - PullRequest
2 голосов
/ 30 ноября 2011

Допустим, у нас есть следующий XML:

<root>
    <sub>
        <id>1</id>
        <values>
            <value>1</value>
            <value>2</value>
        </values>
    </sub>
    <sub>
        <id>2</id>
        <values>
            <value>16</value>
            <value>15</value> 
        </values>
    </sub>
</root>

Что я хочу сделать с Конфигурацией Apache Commons: Я хочу получить все значения для sub с id 2. Как я мог этого добиться? Я ничего не нахожу в документации, как я могу сделать запрос с номером динамической иерархии.

Ответы [ 2 ]

4 голосов
/ 30 ноября 2011

Вы можете использовать XPath:

//sub[id = 2]/values/value
1 голос
/ 01 декабря 2011

// часто приводит к медленному выполнению (вызывает поиск всего дерева XML (под)).

Использование :

/*/sub[id = 2]/values/value

Это выбираетлюбой элемент value, который является дочерним элементом элемента values, который является дочерним элементом элемента sub, у которого id child имеет строковое значение "2", и который (sub) является дочерним элементомверхний элемент документа XML.

...