Пример парсинга DOM или SAX

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

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

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

Заранее благодарю.


person Mxyk    schedule 22.08.2011    source источник


Ответы (2)


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

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

person CommonMan    schedule 22.08.2011
comment
В этом примере не показано, как читать XML из URL-адреса. Он только показывает, как написать файл XML, а затем прочитать его. - person Mxyk; 22.08.2011
comment
Вы можете использовать следующий код для этого URL-адреса url = new URL(http://-----); conn = (HttpURLConnection) url.openConnection(); конн.подключить(); и чтение содержимого URL с помощью url.openStream()) - person CommonMan; 23.08.2011
comment
Я попробую это завтра, когда доберусь до своего Mac. А пока вы получаете мой утвержденный ответ. - person Mxyk; 23.08.2011
comment
Ничего, теперь проблема решена, но спасибо за помощь :). - person Mxyk; 23.08.2011

JAXP:

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

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

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

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

    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();

  2. Создать DocumentBuilder

    Построитель DocumentBuilder=фабрика. новыйСтроительДокументов();

    1. get input stream ClassLoader cls=DomReader.class.getClassLoader(); InputStream is=cls.getResourceAsStream("xml file"); 4. parse xml file and get Document object by calling parse method on DocumentBuilder object. Document document=builder.parse(is); 5. Traverse dom tree using document object.SAX: Simple xml parsing. It parses node by node Traversing is from top to bottom Low memory usage Back navigation is not possible with sax.

    // реализация необходимых обработчиков открытый класс SaxParse extends DefaultHandler{ } // новый экземпляр saxParserFactory SAXParserFactory factory=SAXParserFactory.newInstance(); //НОВЫЙ ЭКЗЕМПЛЯР SAX PARSER SAXParser saxparser=factory.newSAXParser(); //Анализ XML-документа SAXParser.parse(новый файл(файл для анализа), новый SAXXMLParserImpl());

person srinivas Nidadavolu    schedule 09.11.2012