Парсим XML

Парсить будем тремя способами:

  1. simple-xml
  2. SAXParser
  3. XmlPullParser

 

Рассматривать будем на примере тестов, у нас есть список вопросов с различными вариантами ответов, пользователю нужно выбрать правильный ответ.

Создаем файл \res\raw\first_test.xml и добавляем :

Test.java

Question.java

 

1. simple-xml

С помощью этой библиотеки можно не только создавать объекты из xml, но и создавать xml из объектов. Итак..

Открываем /app/build.gradle и добавляем библиотеку simple-xml:

Парсим:

String filename — это имя нашего xml-файла (прим. first_test). Так как тестов у нас несколько, то нужно получать список имён файлов из папки /res/raw.

Если нужно просто получить xml из файла:

 

2. SAXParser

SAXParser может только читать xml.

Скопируем наш xml-файл в  \app\src\main\assets\tests\first_test.xml

Получаем список файлов:

И передаем имя файла:

Класс SaxHandler:

 

3. XmlPullParser

App.getInstance() это:

 

Ссылки:

  1. http://simple.sourceforge.net/
  2. https://developer.android.com/reference/javax/xml/parsers/SAXParser.html
  3. https://developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html

 

 

Добавить комментарий

www.000webhost.com