Пример синтаксического анализа DOM или SAX - PullRequest
1 голос
/ 22 августа 2011

Я пробовал каждый учебник, который я мог в Google, чтобы проанализировать мой XML-файл (вы можете просмотреть его здесь ).

Все, что я хочу сделать сфайл по ссылке выше - проанализировать его в приложении для Android и извлечь имя и строку каждой строки.

Может кто-нибудь помочь здесь?Я прошел, по крайней мере, 7 или около того учебников, и сейчас я теряю всякую надежду.

Спасибо заранее.

Ответы [ 2 ]

2 голосов
/ 22 августа 2011

Вы можете использовать XmlPullParser для анализа XML.

Например, см http://developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html

1 голос
/ 09 ноября 2012

JAXP:

JAXP означает Java API для обработки XML. Это спецификация от w3c. JAXP - это API от SUN.

используя API JAXP, мы можем обработать XML-документ за два mthods. DOM: Сохраняет весь XML-документ в памяти перед обработкой. Он занимает больше памяти. Траверс в любом направлении. Древовидная структура данных

Шаги для работы с DOM:

  1. Создать документBuilderFactory

    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance ();

  2. Создание DocumentBuilder

    DocumentBuilder builder = factory. newDocumentBuilder ();

    1. получить входной поток ClassLoader cls = DomReader.class.getClassLoader (); InputStream is = cls.getResourceAsStream ("XML-файл"); 4. проанализировать xml-файл и получить объект Document, вызвав метод parse на объекте DocumentBuilder. Document document = builder.parse (есть); 5. Пройдите через дерево объектов, используя объект документа. САКС: Простой XML-разбор. Он анализирует узел за узлом Обход сверху вниз Низкое использование памяти Задняя навигация невозможна с sax.

    // реализация необходимых обработчиков открытый класс SaxParse extends DefaultHandler {} // новый экземпляр saxParserFactory SAXParserFactory factory = SAXParserFactory.newInstance (); // НОВАЯ ИНСТАНЦИЯ SAX PARSER SAXParser saxparser = factory.newSAXParser (); // Разбор xml документа SAXParser.parse (новый файл (файл для анализа), новый SAXXMLParserImpl ());

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...