Парсинг XML вот так - PullRequest
       8

Парсинг XML вот так

0 голосов
/ 26 марта 2011
<item>
    <RelatedPersons>
        <RelatedPerson>
            <Name>xy</Name>
            <Title>asd</Title>
            <Address>abc</Address>
        </RelatedPerson>
        <RelatedPerson>
            <Name>xy</Name>
            <Title>asd</Title>
            <Address>abc</Address>
        </RelatedPerson>
    </RelatedPersons>
</item>

Я хотел бы проанализировать эти данные с помощью SAXParser.Как я могу это сделать?Я знаю учебные пособия по SAX и могу анализировать любой нормальный RSS, но не могу разобрать только эти данные.

1 Ответ

1 голос
/ 26 марта 2011

Определите свою проблему: Что вы, вероятно, можете сделать, это создать объект значения (POJO) с именем Person, который имеет свойства: name, title и address.Ваша цель синтаксического анализа этого XML будет заключаться в создании объекта ArrayList<Person>.Определение определенной структуры данных помогает вам строить логику вокруг нее.

Выберите анализатор : Затем вы можете использовать SAX Parser или XML Pull Parser для просмотра тегов: см. Этот lin-line учебник по DOM, SAX иXML Pull Parser в Android .

Логика заполнения данных : Затем при синтаксическом анализе, когда вы сталкиваетесь с тегом <RelatedPersons>, создайте новый объект Person.Когда вы встретите соответствующий тег Properties, прочитайте значение и заполните его в этом объекте.Когда вы встречаете закрывающий </RelatedPersons>, сбросьте этот объект Person в ArrayList.В зависимости от используемого парсера вам придется использовать соответствующие методы для перехода к дочернему узлу / вложенным узлам (подробности см. По ссылке)

К тому времени, когда вы закончите анализ последнего узла элемента, вы будетеиметь все значения в вашем ArrayList.

Обратите внимание, что это скорее теоретический ответ;Я надеюсь, что это помогает.

...