Использование XPath для получения дочерних элементов - PullRequest
0 голосов
/ 16 декабря 2010

Я пытаюсь использовать DocumentBuilder и XPath для анализа XML-документа со структурой, подобной:

<questionnaire>
  <item>
    <question>How have you been?</question>
    <response>Great</response>
    <response>Good</response>
    <response>So-so</response>
    <response>Bad</response>
    <response>Rather not answer</response>
  </item>
</questionnaire>

Чтобы получить доступ к вопросу, я сделал это (что работает):

expression = "/questionnaire/item[" + i + "]/question";
setQuestion(xmlReader.read(expression, XPathConstants.STRING).toString());

Теперь мне нужен способ создать список строк на основе элементов ответа. Количество ответов является переменным, поэтому один вопрос может иметь любое количество ответов. Кто-нибудь знает, как это сделать?

Спасибо

1 Ответ

0 голосов
/ 16 декабря 2010

Что-то подобное не подойдет? Вы должны заметить, что xmlReader.read, вероятно, возвращает коллекцию в этом случае.

expression = "/questionnaire/item[" + i + "]/response";
setResponse(xmlReader.read(expression, XPathConstants.STRING));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...